这个很简单的程序,整型数据的溢出:
#include <stdio.h> void main() { int a,b; a = 32767; b = a + 1; printf("%d,%d\n",a,b); }
在tc上运行结果是32767,-32768,在vc上运行结果就是32767,32768,为什么?
那位大侠能告诉我啊,急啊!
太谢谢了,谢谢啊~~~~~~~~~~~
你在VC++ 上面输入这样一个语句 printf("%d\n", sizeof(int)); 看看输出几:应该是 4 吧,这就是说int型占有 4 个字节,所以32768并没有溢出;
哦,懂了!!
输入一个32位的是不是就溢出了???
呵呵,谢了,楼上的,偶懂了!!
32位确实溢出了,在此非常感谢!!!