int i = 0
i = i ++ ;
j= i ++ ;
问在java底下, c底下, i是几,j是几
关键在i = i++ 算完了之后, java是0, c是1
c就不说了,反正平常我也不用
java的话
i++的时候,原来的这个i不动,另外分配一个内存i1,i1的作用是用来保存原来的这个数值,i1和i都是0,然后把i加1,这个时候i是1,i1是0,然后把i1的值赋给i,这个时候i1是0,i也是0,然后i1销毁
如果是j等于i++的情况,类似, 一开始,i1和i都是0,然后i自己加1,这个时候i1是0,i是1,然后把i1的值赋给j,这个时候,j是0,i是1,i1是0,然后i1销毁,这个时候j是0,i是1,i1不存在
纯粹为了考试。。。。。
本文解析了在Java和C语言中执行i=i++; j=i++;时i和j的具体数值变化过程,并详细解释了Java中变量更新机制。

被折叠的 条评论
为什么被折叠?



