1. i++:先拿到i的值使用,再进行加1操作。
输出的结果为:0。
理解:++的优先级高于=,因此会先执行++然后在执行=;由于a++会先获取a的值为0,所以最终赋值后a的值为0(++操作被=操作覆盖了);
(a=0->a=1->a=0)。
可以通过下面的例子来加强理解:
输出结果为:temp=0;a=1。
理解:a++先获取a的值为0,然后a进行了+1操作变成了1;但是赋值给temp的是a为0时的值;
(a=0->temp=0->a=1)
2. ++i:先进行加1操作,在使用i的值。
输出的结果为:1。