++i,是先进行++,i++,是后进行++;
如
i=0;
j=0;
j=++i;//这时j=1
j=i++;//这时,j=0;
//运行到这里时,i才为1
给你做了小测试 i++ 和 ++i 的区别,源码和输出结果,对照这看一下就明白了
运算之前都是 0 ,运算之后都是 1,没啥区别
区别在于 i++ = 0, ++i = 1 ,
i++ 是先返回 i 后再加1,所以输出收还是 0,输出后是1.
++ i 是 先加1 再返回 i ,输出的时候已经是 1 了
如果时是i++,就是先用i参与运算,然后再自加1
如果是++i,就是先i自加1,再参与运算
如i=0
a[i++]=1 a[++i]=1,前者是a[0]=1 后者是a[1]=1,执行完之后i都是1