目录

C++ 12a自增自减运算符

C++ 自增自减运算符

https://www.runoob.com/images/up.gif C++ 运算符

自增运算符 ++ 会把操作数加 1,自减运算符 – 会把操作数减 1。因此:

1
2
3
4
5
x = x+1;
 
等同于
 
x++;

同样的:

1
2
3
4
5
x = x-1;
 
等同于
 
x--;

无论是自增运算符还是自减运算符,都可以放在操作数的前面(前缀)或后面(后缀)。例如:

1
2
3
4
5
x = x+1;
 
可以写成:
 
++x; // 前缀形式

或者:

1
x++; // 后缀形式

前缀形式与后缀形式之间有一点不同。如果使用前缀形式,则会在表达式计算之前完成自增或自减,如果使用后缀形式,则会在表达式计算之后完成自增或自减。

实例

请看下面的实例,理解二者之间的区别:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
using namespace std;
 
int 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;
}

当上面的代码被编译和执行时,它会产生下列结果:

1
2
3
Line 1 - Value of a++ is :21
Line 2 - Value of a is :22
Line 3 - Value of ++a is  :23

https://www.runoob.com/images/up.gif C++ 运算符