自增运算符 ++ 会把操作数加 1,自减运算符 -- 会把操作数减 1。因此:
x = x+1; 等同于 x++;
同样的:
x = x-1; 等同于 x--;
无论是自增运算符还是自减运算符,都可以放在操作数的前面(前缀)或后面(后缀)。例如:
x = x+1; 可以写成: ++x; // 前缀形式
或者:
x++; // 后缀形式
前缀形式与后缀形式之间有一点不同。如果使用前缀形式,则会在表达式计算之前完成自增或自减,如果使用后缀形式,则会在表达式计算之后完成自增或自减。
请看下面的实例,理解二者之间的区别:
#include <iostream> using namespace std; main() { int a = 21; int c ; // a 的值在赋值之前不会自增 c = a++; cout << "Line 1 - Value of a++ is :" << c << endl ; // 表达式计算之后,a 的值增加 1 cout << "Line 2 - Value of a is :" << a << endl ; // a 的值在赋值之前自增 c = ++a; cout << "Line 3 - Value of ++a is :" << c << endl ; return 0; }
当上面的代码被编译和执行时,它会产生下列结果:
Line 1 - Value of a++ is :21 Line 2 - Value of a is :22 Line 3 - Value of ++a is :23