一文詳解C++中運算符的使用
一、算術運算符
運算符 | 描述 |
---|---|
+ | 把兩個操作數相加 |
– | 從第一個操作數中減去第二個操作數 |
* | 把兩個操作數相乘 |
/ | 分子除以分母 |
% | 取模運算符,整除後的餘數 |
++ | 自增運算符,整數值增加 1 |
– | 自減運算符,整數值減少 1 |
通過下面的例子可以讓我們更好的理解C++中的運算符的意義與使用方法。
#include <iostream> using namespace std; int main() { int a = 66; int b = 33; int c; c = a + b; cout << "a + b 的值是 " << c << endl ; c = a - b; cout << "a - b 的值是 " << c << endl ; c = a * b; cout << "a * b 的值是 " << c << endl ; c = a / b; cout << "a / b 的值是 " << c << endl ; c = a % b; cout << "a % b 的值是 " << c << endl ; return 0; }
輸出:
a + b 的值是 99
a – b 的值是 33
a * b 的值是 2178
a / b 的值是 2
a % b 的值是 0
註意:需要知道a++和++a的區別(a–一樣)
a++ :a先進行賦值,然後再進行++運算。
++a :a首先進行++運算,然後賦值給a。
下面的代碼可以更好的展示他們兩個的關系:
#include <iostream> using namespace std; int main() { int z = 1; cout << z++ << endl; int h = 1; cout << ++h; return 0; }
輸出:
1
2
二、關系運算符
運算符 | 描述 |
---|---|
== | 檢查兩個操作數的值是否相等,如果相等則條件為真。 |
!= | 檢查兩個操作數的值是否相等,如果不相等則條件為真。 |
> | 檢查左操作數的值是否大於右操作數的值,如果是則條件為真。 |
< | 檢查左操作數的值是否小於右操作數的值,如果是則條件為真。 |
<= | 檢查左操作數的值是否大於或等於右操作數的值,如果是則條件為真。 |
>= | 檢查左操作數的值是否小於或等於右操作數的值,如果是則條件為真。 |
#include <iostream> using namespace std; int main() { int a = 21; int b = 10; int c ; if( a == b ) { cout << "a 等於 b" << endl ; } else { cout << "a 不等於 b" << endl ; } if ( a < b ) { cout << "a 小於 b" << endl ; } else { cout << "a 不小於 b" << endl ; } if ( a > b ) { cout << "a大於 b" << endl ; } else { cout << "a 不大於 b" << endl ; } return 0; }
輸出:
a 不等於 b
a 不小於 b
a大於 b
下面的代碼可以讓我們更好的理解邏輯運算符:
#include <iostream> using namespace std; int main() { int a = 10; int b = 20; int c = 30; int d = 100; if( a == b || c < d) cout << "6666" << endl; else cout << "66-----66" << endl; if( a < b && b < c && d < c) cout << "7777" << endl; else cout << "77-----77" << endl; if( !(a == b || c == d)) cout << "8888" << endl; else cout << "88-----88" << endl; return 0; }
輸出:
6666
77—–77
8888
三、邏輯運算符
運算符 | 描述 |
---|---|
&& | 稱為邏輯與運算符。如果兩個操作數都 true,則條件為 true。 |
丨丨 | 稱為邏輯或運算符。如果兩個操作數中有任意一個 true,則條件為 true。 |
! | 稱為邏輯非運算符。用來逆轉操作數的邏輯狀態,如果條件為 true 則邏輯非運算符將使其為 false。 |
四、位運算符
p | q | p&q | p丨q | p^q |
---|---|---|---|---|
0 | 0 | 0 | 0 | 0 |
0 | 1 | 0 | 1 | 1 |
1 | 0 | 0 | 1 | 1 |
1 | 1 | 1 | 1 | 0 |
- &:表示位與操作
- 丨:表示位或操作
- ^ :表示異或操作
五、賦值運算符
運算符 | 描述 |
---|---|
= | 簡單的賦值運算符,把右邊操作數的值賦給左邊操作數 |
+= | 加且賦值運算符,把右邊操作數加上左邊操作數的結果賦值給左邊操作數 |
-= | 減且賦值運算符,把左邊操作數減去右邊操作數的結果賦值給左邊操作數 |
*= | 乘且賦值運算符,把右邊操作數乘以左邊操作數的結果賦值給左邊操作數 |
/= | 除且賦值運算符,把左邊操作數除以右邊操作數的結果賦值給左邊操作數 |
%= | 求模且賦值運算符,求兩個操作數的模賦值給左邊操作數 |
<<= | 左移且賦值運算符 |
>>= | 右移且賦值運算符 |
&= | 按位與且賦值運算符 |
^= | 按位異或且賦值運算符 |
丨= | 按位或且賦值運算符 |
六、雜項運算符
sizeof—–sizeof 運算符返回變量的大小。例如,sizeof(a) 將返回 4,其中 a 是整數。
Condition ? X : Y—–如果 Condition 為真 ? 則值為 X : 否則值為 Y。
.(點)和 ->(箭頭)—–成員運算符用於引用類、結構和共用體的成員。
Cast—–強制轉換運算符把一種數據類型轉換為另一種數據類型。例如,int(2.2000) 將返回 2。
&——指針運算符 & 返回變量的地址。例如 &a; 將給出變量的實際地址。
*——指針運算符 * 指向一個變量。例如,*var; 將指向變量 var。
到此這篇關於一文詳解C++中運算符的使用的文章就介紹到這瞭,更多相關C++運算符內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!
推薦閱讀:
- 聊聊c++數組名稱和sizeof的問題
- C++中的數組你真的理解瞭嗎
- C++的數據類型你真的瞭解嗎
- C++中獲取字符串長度的函數sizeof()、strlen()、length()、size()詳解和區別(推薦)
- C++ delete之靜態變量問題詳解