51Testing软件测试论坛

标题: atoi转换字符串错误 [打印本页]

作者: lomect    时间: 2016-10-16 16:04
标题: atoi转换字符串错误
本帖最后由 lomect 于 2016-10-16 16:06 编辑

action
{
lr_output_message("%d",atoi(lr_eval_string("1234444444444444444")));

return 0 ;
}
Action.c(1): 2147483647
作者: puchonghui    时间: 2016-10-17 10:13
超出整型范围了吧

32位有符号整型
2^31-1=2147483647
作者: 菜鸟@大虾    时间: 2016-10-17 10:14
C语言中int的取值范围为:-2147483648~2147483647
作者: puchonghui    时间: 2016-10-17 11:25
菜鸟@大虾 发表于 2016-10-17 10:14
C语言中int的取值范围为:-2147483648~2147483647

这个不一定的,c语言int的范围在不同的平台不同的编译器下可能是不同的。。
作者: lomect    时间: 2016-10-17 14:16
puchonghui 发表于 2016-10-17 10:13
超出整型范围了吧

32位有符号整型

这个要怎么解决
作者: lomect    时间: 2016-10-17 14:16
菜鸟@大虾 发表于 2016-10-17 10:14
C语言中int的取值范围为:-2147483648~2147483647

这个要怎么解决
作者: puchonghui    时间: 2016-10-17 16:19
lomect 发表于 2016-10-17 14:16
这个要怎么解决

我没明白你要干嘛,如果只是为了输出一下,直接当成字符输出就是了啊。。




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2