C/C++學習筆記 基礎入門系列(五)

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 逗號 , 從左到右
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章