C/C++基礎入門系列
寫在前面的話
C++學了一段時間了,現在在整理筆記,作爲備份和分享,會一點點的連載上來,如果此時的你在看這篇文章,而且想學C/C++,本篇系列文章或許能幫助你打基礎,爲了方便大家,代碼我也直接碼在上面了,如果複製粘貼都懶得做的話,過段時間我會把整理好的代碼打包傳到下載裏面。
目錄
第一部分 HelloWorld的起點
第二部分 初探數據類型(一)
第三部分 初探數據類型(二)
第四部分 認識運算符(一)
第五部分 認識運算符(二)
第六部分 理清思路,寫好邏輯結構(一)
第七部分 理清思路,寫好邏輯結構(二)
第八部分 理清思路,寫好邏輯結構(三)
第九部分 數據處理神器之數組(一)
第十部分 數據處理神器之數組(二)
第十一部分 寫好函數,學會功能複用(一)
第十二部分 寫好函數,學會功能複用(二)
第五部分 認識運算符(二)
3.4 邏輯運算符
作用: 根據表達式的值返回真或假值
邏輯運算符有以下符號:
運算符 | 術語 | 描述 | 示例 | 結果 |
---|---|---|---|---|
&& | 與 | 稱爲邏輯與運算符。 如果兩個操作數都非零,則條件爲真。 |
A = 0; B = 1; (A && B); |
0 |
|| | 或 | 稱爲邏輯或運算符。 如果兩個操作數中有任意一個非零,則條件爲真。 |
A = 0; B = 1 (A || B) ; |
1 |
! | 非 | 稱爲邏輯非運算符。用來逆轉操作數的邏輯狀態。 如果條件爲真則邏輯非運算符將使其爲假。 |
A = 0; B = 1; !(A && B) ; |
1 |
示例:
#include<iostream>
using namespace std;
int main() {
int a = 10;
cout << !a << endl;
cout << !!a << endl;
cout << (a && 0) << endl;
cout << (a || 0) << endl;
system("pause");
return 0;
}
小結: 非運算符,真變假,假變真
與運算,同真爲真,其餘爲假
或運算,同假爲假,其餘爲真
3.5 位運算符
作用: 對數據進行位操作,能對內存進行位級別的訪問,前面我也提到過一次,底層代碼操作寄存器的時候經常用,因此常用在硬件系統的開發中
p | q | p & q | p | q | p ^ q |
---|---|---|---|---|
0 | 0 | 0 | 0 | 0 |
0 | 1 | 0 | 1 | 1 |
1 | 1 | 1 | 1 | 0 |
1 | 0 | 0 | 1 | 1 |
3.6 雜項運算符
運算符 | 描述 |
---|---|
sizeof | sizeof 運算符返回變量的大小。例如,sizeof(a) 將返回 4,其中 a 是整數。 |
Condition ? X : Y | 條件運算符。如果 Condition 爲真 ? 則值爲 X : 否則值爲 Y。 |
, | 逗號運算符會順序執行一系列運算。 整個逗號表達式的值是以逗號分隔的列表中的最後一個表達式的值。 |
.(點)和 ->(箭頭) | 成員運算符用於引用類、結構和共用體的成員。 |
Cast | 強制轉換運算符把一種數據類型轉換爲另一種數據類型。例如,int(2.2000) 將返回 2。 |
& | 指針運算符 &返回變量的地址。例如 &a; 將給出變量的實際地址。 |
* | 指針運算符 * 指向一個變量。例如,*var; 將指向變量 var。 |
3.7 運算符優先級
運算符的優先級確定表達式中項的組合。這會影響到一個表達式如何計算。某些運算符比其他運算符有更高的優先級,例如,乘除運算符具有比加減運算符更高的優先級。
例如 x = 7 + 3 * 2,在這裏,x 被賦值爲 13,而不是 20,因爲運算符 * 具有比 + 更高的優先級,所以首先計算乘法 3*2,然後再加上 7。
下表將按運算符優先級從高到低列出各個運算符,具有較高優先級的運算符出現在表格的上面,具有較低優先級的運算符出現在表格的下面。在表達式中,較高優先級的運算符會優先被計算。
優先級 | 類別 | 運算符 | 結合性 |
---|---|---|---|
1 | 後綴 | () [] -> . ++ - - | 從左到右 |
2 | 一元 | + - ! ~ ++ - - (type)* & sizeof | 從右到左 |
3 | 乘除 | * / % | 從左到右 |
4 | 加減 | + - | 從左到右 |
5 | 移位 | << >> | 從左到右 |
6 | 關係 | < <= > >= | 從左到右 |
7 | 相等 | == != | 從左到右 |
8 | 位與 AND | & | 從左到右 |
9 | 位異或 XOR | ^ | 從左到右 |
10 | 位或 OR | | | 從左到右 |
11 | 邏輯與 AND | && | 從左到右 |
12 | 邏輯或 OR | || | 從左到右 |
13 | 條件 | ?: | 從右到左 |
14 | 賦值 | = += -= *= /= %=>>= <<= &= ^= |= | 從右到左 |
15 | 逗號 | , | 從左到右 |