永发信息网

C/C++基本问题:字符串转化为long型数字

答案:4  悬赏:0  手机版
解决时间 2021-04-28 18:20
  • 提问者网友:蔚蓝的太阳
  • 2021-04-28 04:35

一个以'\0'结尾的11位字符串,都是数字字符,将其转化为Long型的数并返回

用VC作。

最佳答案
  • 五星知识达人网友:舊物识亽
  • 2021-04-28 05:49
#include <stdio.h>

__int64 str2long( char* s )
{
__int64 n = 0;
while ( *s ) {
n *= 10;
n += *s - '0';
++s;
}
return n;
}

int main()
{
printf( "%I64d\n", str2long( "123456578912" ) );
}


全部回答
  • 1楼网友:枭雄戏美人
  • 2021-04-28 09:18
调用字符串函数atol
  • 2楼网友:雾月
  • 2021-04-28 07:59

long型保存不到这么大的数字

得用__int64 的 下面例子

__int64 value = 0; value = _atoi64( str );

  • 3楼网友:洎扰庸人
  • 2021-04-28 07:24
有现成的函数,atol 函数名: atol 功 能: 把字符串转换成长整型数 long l; char *str = "98765432"; l = atol(str);
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯