相信在很多编程语言中都会遇见这个问题,这对于刚入编程的人来说可能是相当懵逼了。
老师的官方说法是:操作符在前面先进行自身运算,再进行其他运算;操作符在后面,先进行其他运算再进行自身运算。
反正我这段话是倒背如流的,但一算才发现还是一脸懵逼。
我对这两个的区别是这么理解的:我把x,++x,x++分别看做3个不同的变量,x = ++x;x++ = x -1 。反正就是x不管哪种形式都要自增1,而x++这个变量不会增1。
下面举个例子:
x=1
x++ + ++x =
从左往右看,x++,此时x = 2,x++ = 1;
再往后看 ++x,先前x = 2,此时x自增1,x = 3 = ++x
所以最后答案是1 + 3 = 4