什么死循环,只是0xffffffff的绝对值减去1个输出了。
应该是0-----0x7fffffff
然后再-0x7fffffff-----2

解决方案 »

  1.   

    看来你不懂for(;;)啊,for是一个循环,int i = 0; 是起始值,i != -1;是判断条件,如果满足这个条件,执行 i++
      

  2.   

    for中的"int i = 0; i != -1; i++"一直成立,直到超过了整数的范围出现错误.
    我想输出也是在整数的范围内但没有"-1"
      

  3.   

    改正以前的发言
    我认为是输出0到2的31次-1,再从负的2的31次到-2
    原因
    数在机器中以补码表示
    0xffffffff为-1
    0x80000000为负的2的31次
    本题即从0x00000000至0xfffffffe的输出注,java中int型为32位
    取值范围为负的2的31次到正的2的31次-1
      

  4.   

    first output:0x00000000 to 0x7fffffff
    then output: 0x80000000(~0x7fffffff) to 0xfffffffe(-2)
      

  5.   

    i不断的加1,等到达到int型值的最大值时,数据溢出,出现-1,结束循环。
      

  6.   

    不停的输出1.2.3...,直到越界int为止
      

  7.   

    搞懂FOR(;;)再来提问浪费感情!