int i= 0 ;
i = i++ + ++i ;是如何执行的

解决方案 »

  1.   

     1 i++=0;     先用其值运算,再增一。
     2 执行完第一步后,i=1;
     3 ++i=2;    先增1,再用其值计算。
     4 i=i++ + ++i=0+2=2;
      

  2.   

    先算I++,然后算++I然后算+最后的结果是i=2
      

  3.   

    赋值首先算等号右边,i初始是0用完0再加一,执行完i++,i就变成1了,再执行++i,i就变成2了等号左边不论是什么都不用管,最后跟等号右边一致,i = 0 + 2。
      

  4.   

    i++ ++i 都是从右向左运算
    i++ 是引用再加
    ++i 是加再引用
      

  5.   

    运算优先级、前++、后++的问题;条件:参加运算,迭代int i=0;i的初值:0
    i=i++ + ++i;
    这是简单的加法运算:从左至右来分析,i++,i的值先以0参加运算之后自增1,变成了1,右边++i,i此时是1,先自增1变为2再参加运算:i=0+2=2;前加加是变量先自增再参加运算,后加加是变量先参加运算再自增