i++就是先使用再相加(使用后是指此语句结束,是 ; , 之类的符号之后),++i就是先相加使用
我感觉i++,++i使用要分为两种情况
1 是在算式计算中
i++就先不管它,等这条语句结束再相加。
例:
int i;
i = i * ((i++) + (++i));
先算(i++) + (++i) i++中的加加等遇到;后再加
所以是3 + 3 = 6
i * 6 = 3 * 6 =18
最后再加一,所以是19
2 在函数调用中
++i被替换成变量名,i++ 被替换成数值, i还是i。
例:
void fun (int a ,int b, int c,int d)
{
printf("%d %d %d %d",a,b,c,d);
}
int main()
{
int i = 2;
fun(i++,++i,i,++i);//(4,i,I,I) -> (4,5,5,5)
return 0;
}
一个在努力中的未来程序员,如果有更好的想法,欢迎评论。