前自加(++a)与后自加(a++)的差别

自加是自己加1的操作。比如a++ 是a+1 ,变量a变成了 a+1的值。

如果是简单的只做 a++;或者++a的语句,效果是一样的。

 

但是如果嵌入到复杂的语句中,比如 b = a++; 和 b = ++a; b的值是不一样的。

先理解a++, a自增,再得到a的值。

再理解++a,a先不变,再自增,再得到a的值。

所以能够明白,如果a的初始值为5;

b=a++, b的最终值是5,b不关心a本身做了什么。a的值变成了6.

而b=++a, b是做了两个运算,++ 和 = ,所以b为6, 而a 也做了一次运算++,所以a也为6.

这样就能理解其他的复杂运算。

可以简单记着 如果是 a++可以把它值当成a,只有a改变,调用它的值当时不改变。

posted on 2015-06-25 14:33  hcu5555  阅读(547)  评论(0编辑  收藏  举报