这个可能是你理解错了,课本可能也有些歧义,他是一个顺序,在进行int c=a++时,已经执行了int b=++a,所以:
1.a=3;
2.int b=++a;此时a=4.
3.int c=a++;先将a的值(4)赋给c,此时c=4,然后a进行自增,然后a=5了。
++a是先将自身值加 1再参与运算,而a++是先参与运算后再将自身值加 1。
c=a++ 是先赋值了c=a,后面a才自增的。注释的解释非常清楚。
如果是加加在前面,则先算加加,如果加加在后面则此句执行完后再算加加。
比如:b=++a;相当于++a;b=a;而b=a++;相当于b=a;a++