应该不会结束
vc6.0 编译器 i = 2147483647 退出循环,超出int的取值范围 i的值就是一个负数,所以i就不再大于0
不懂,围观,看看怎么解决
让我看看,各位大哥 请多多 照顾小弟 再次谢谢。。
绝对不可能 无限循环
int -32768~32767
32767+1=-32768
最后I输出32767
。。。。。。。。。。。。。。。。。。。。。。。。。
看看答案。
超最大值以后把
溢出负就会停?
会结束滴int是有符号滴,至于多少要看什么编译器;int如果是4字节vc里的i=(10000000000000000000000000000000)b;int如果是2个字节的话i=
应该很快可以处理出来吧
没试过,有试过的吗
这个我觉得不会结束啊...除非溢出啊
应该没法通过编译!
如果int是32位的会在i=2147483648时结束
最后输出2147483647
会结束,当超过int的最大范围时,是一个负数,int四个字节二进制表示为 1000 0000 0000 0000 0000 0000 0000 0000
我想应该是32767。因为是int型,i一直增大,就一直满足i>0,也就一直循环,知道i的值溢出,得到-32768,就退出循环,而-32768之前是32767,所以就输出32767。但是我也还没上机试试,所以楼主还是上机试试把!!!
错误 i = 2147483647 ;在printf()中打印的是i = 2147483647是对的,但是for循环 i++,在i<0;即一个负数时才结束,所以最终结束时 i 的值是 i = 2147483647+1;而打印显示的是 i = 2147483647。亲明白了吗?:lol
我觉得循环不会结束.数字范围在1-65535之间来回的浮动~