读书人

你知道吗?解决办法

发布时间: 2012-03-29 12:53:13 作者: rapoo

你知道吗?
下面程序当我输入9999999999(共10个),程序输出1410065407

C/C++ code
#include <stdio.h>int main(){    int n;    while (scanf("%d",&n)!=EOF)    {        printf("the result is :  %d\n\n",n);    }    return 0;}


请问大家,如果溢出,不应该出现负数吗?怎么会出现这种情况呢?

[解决办法]
你这个越界好几次了,又回到正数了
[解决办法]
就是转换成2进制 保存低位的数据 可以在win7的计算器中验证 输入十进制的9999... 然后选中双字就是这个结果
[解决办法]
探讨
你这个越界好几次了,又回到正数了

[解决办法]
设个断点,看看读入了什么?

“如果溢出,不应该出现负数吗”哪里听来的,你用实践证明了其错误!

读书人网 >C语言

热点推荐