i=0.
i++先返回i的值,再把i加一,
++i先把i加一,再返回i的值。

解决方案 »

  1.   

    编译器的原因
    参考http://www.zdnet.com.cn/developer/code/story/0,2000081534,39213850,00.htm
      

  2.   

    to tsd3698(七夜) 
       照你的说法,那i应该为1才对啊
      

  3.   

    还是flyforlove(为情飞)高, 原来java的编译器是这样运行的
      

  4.   

    等于0,其实scjp认证考试很多这样的题目啊
    首先你得明白对象的概念,i++返回的值是1,但是它不能改变i本身的大小,
    仔细想一下
      

  5.   

    在TURBO C中应该
    等于零
      

  6.   

    int i=0;   int i=0;
     i=i++ ;   i=++i
     i= 0      i=1   自增的用法   比较出真知
      

  7.   

    如果语意给常理相去甚远,就不要用如果很常用,就是JAVA的BUG了钻这个牛角尖,划不来
      

  8.   

    那么 
    int i = 0, int j;
    j = (++i) ++ ;
    为什么编译时会出错?
    JVM是怎样翻译成字节码文件的?
      

  9.   

    to lake110(lake110)
       j=1
      

  10.   

    java:  i = 0;
    c:     i = 1;
      

  11.   

    在java里运行是:
    int i=0;  
     i=i++ ;
     i= 0 int i=0;  
     i=++i ;
     i=1