以前对这俩的区别似乎知道,又好像不那么透彻,今天专门整理澄清。
一、单独一行时,结果相同。
int x = 0;
x++; //x值为1
++x; //x值为2
但是注意:++x的效率更高,因为不会去申请临时内存。
二、在表达式中,
++x先增加1,再返回x
x++先返回x,表达式结束再对x做增1
int x = 5,
y = x++, // y = 5, x =6
z = ++x; // z = 7, x = 7
三、一般情况,推荐使用 ++x
因为 x++ 花费较高,除非有特殊用途。