c语言中++问题。

来源:百度知道 编辑:UC知道 时间:2024/05/22 11:46:46
a=1.a++,++a各等于多少。区别在那里,如何区分。
int i=1,i1,i2;
i1=++i;
i2=i++;
运算结果为:i1=2,i2=2.
int i=1,i1,i2;
i1=i++;
i2=++i;
运算结果为:i1=1.i2=3.
为何是两种不同的结果。
高手指点

++a
a++

都是相当于 a=a+1;

不同的是比如

int a=10;
int i;
i = a++; //这里先执行 i=a 然后执行 a++ 所以 i 的值为 10
i = ++a; //这里先执行 a++ 然后执行 i=a 所以 i 的值为 11

若b=a++,则a=1,b=2
若b=++a,则a=2,b=2

结果一样
a++是后增,就是先进行其他运算,再加1\
++a是前增,就是先加1,再进行其他运算,大概是这样.