C语言wtol函数,atol, _ttol, _wtol

atol, _ttol, _wtol:字符串转 32 位长整数 (long)

long atol(const char *s);

long _wtol(const wchar_t *s);

#include

std

s:整数,格式:"[空白字符][符号][数字]"

长整数,long 类型

如果参数 s 包含不可识别的字符,会终止于第一个不可识别的字符,返回前面可识别部分转为整数的值,如果第一个字符不可识别返回值为 0;

如果超出了整数范围会溢出,得到错误的数值 (溢出之后的数值一般会等于丢掉超范围的高位,保留范围之内的低位的数值);

这些错误都不产生异常。

字符串

转换结果

说明

" 12345"

12345

"-54321"

-54321

"2000000000"

2000000000

"3000000000"

-1294967296

3000000000 超出了 long 长整数范围:-2147483648 ~ 2147483647,得到错误的结果

"-7777777777"

812156815

-7777777777 超出了 long 长整数范围:-2147483648 ~ 2147483647,得到错误的结果

"-1111111111"

-1111111111

"123e4


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部