C++ 自增自減運算符
自增運算符 ++ 會把運算元加 1,自減運算符 -- 會把運算元減 1。因此:
x = x+1; 等同於 x++;
同樣的:
x = x-1; 等同於 x--;
無論是自增運算符還是自減運算符,都可以放在運算元的前面(首碼)或後面(尾碼)。例如:
x = x+1; 可以寫成: ++x; // 首碼形式
或者:
x++; // 尾碼形式
首碼形式與尾碼形式之間有一點不同。如果使用首碼形式,則會在運算式計算之前完成自增或自減,如果使用尾碼形式,則會在運算式計算之後完成自增或自減。
實例
請看下麵的實例,理解二者之間的區別:
實例
#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;
}
當上面的代碼被編譯和執行時,它會產生下列結果:
Line 1 - Value of a++ is :21 Line 2 - Value of a is :22 Line 3 - Value of ++a is :23