x++与++x的区别

*简单表达式a++++a,这两种写法代表同样的意思,比如用在常见的for语句中;

但当递增increase或递减decrease的运算结果被直接用在其它的运算式中时,它们就代表非常不同的意思了:

++a 中,变量a的值先增加,然后再计算整个表达式的值,因此增加后的值被用在了表达式的计算中

a++ 中,变量a的值在表达式计算后才增加,因此a在增加前所存储的值被用在了表达式的计算中。例如:

Example 1 Example 2
x = 3;
y = ++x;
// x contains 4, y contains 4
x = 3;
y = x++;
// x contains 4, y contains 3

例1表达式中,x的值先增加1,然后再赋值给y,所以x=4,y=4(已经测试过);

例2表达式中,x的值先给y,然后增加1,所以y=3,x=4;

posted on 2014-03-07 21:36  guozqzzu  阅读(5996)  评论(1编辑  收藏  举报