【C语言笔记初级篇】第五章:操作符
目錄
(1)算數(shù)操作符
(2)移位操作符
A:左移
B:右移?
(3)位操作符
(4)賦值操作符
(5)單目操作符
(6)關(guān)系操作符
(7)邏輯操作符
(8)條件操作符(三目運算符)
(9)逗號表達式
(10)下標(biāo)引用,函數(shù)調(diào)用和結(jié)構(gòu)成員
A:下標(biāo)引用操作符
B:函數(shù)調(diào)用操作符
C:結(jié)構(gòu)體成員
(11)表達式求值
A:隱式類型轉(zhuǎn)換
B:算數(shù)轉(zhuǎn)換
C:操作符的屬性
(1)算數(shù)操作符
第一點:基本介紹
算數(shù)操作符包括以下幾種
第二點:注意事項
1:除了“%”之外,其余算數(shù)操作都可以用于整數(shù)和浮點數(shù),"%"左右兩側(cè)必須為整數(shù)
2:對于“/”,當(dāng)左右操作數(shù)是整數(shù)時,執(zhí)行的是整除(也就是只要商的部分),當(dāng)左右操作數(shù)有一個是小數(shù)時,當(dāng)然前提變量要定義為浮點型,執(zhí)行的就是除法,也就是結(jié)果是小數(shù)
(2)移位操作符
A:左移
左移就是這個數(shù)的二進制位向左移動,空出來的用0補齊
左移的結(jié)果就是這個數(shù)變?yōu)?倍
B:右移
邏輯移位:補碼向右移動,空出來的用0填充
算數(shù)移位:補碼向右移動,空出來的用符號位填充(主要使用)
算數(shù)右移的結(jié)果就是變?yōu)樵瓉淼亩种?/p>
需要注意不要移動負數(shù)位,此標(biāo)準(zhǔn)未定義
(3)位操作符
(4)賦值操作符
賦值操作符基本無需講解,這里只需注意一下常用的這些復(fù)合賦值符
(5)單目操作符
第一:單目操作符的類型
第二:對其中幾個單目操作符的說明
1:sizeof
sizeof是用來計算空間大小的
sizeof和數(shù)組
sizeof內(nèi)部不會進行計算
2:"~"按位取反
按位取反基本介紹
按位取反的應(yīng)用
(6)關(guān)系操作符
(7)邏輯操作符
(注意這里的邏輯操作符不要和位操作符搞混了,位操作符是對數(shù)的二進制位進行操作,而邏輯操作符是對數(shù)本身操作)
第一:邏輯操作符類型
第二:邏輯與和邏輯或的區(qū)別
邏輯與:遇假則假,全真則真
邏輯或:遇真則真,全假則假
這里要特別注意邏輯與左邊為假停止計算,如果是邏輯或左邊為真停止計算
(8)條件操作符(三目運算符)
(9)逗號表達式
用逗號分開的表達式就叫做逗號表達式,逗號表達式會從左到右依次計算,最終逗號表達式返回的是最后一個表達式的結(jié)果
在一般情況下,逗號表達式是不常使用的,因為有時會造成代碼的不易理解
(10)下標(biāo)引用,函數(shù)調(diào)用和結(jié)構(gòu)成員
A:下標(biāo)引用操作符
B:函數(shù)調(diào)用操作符
我們調(diào)用函數(shù)的圓括號,就是函數(shù)調(diào)用操作符
C:結(jié)構(gòu)體成員
第一點:結(jié)構(gòu)體是什么
我們之前使用的int,char類似于結(jié)構(gòu)體,然后int a,就是創(chuàng)建一個int類型的變量。
我們可以把結(jié)構(gòu)體理解為一個學(xué)生,這個學(xué)生它有很多信息,例如信息,學(xué)號,性別等等。而這些信息就叫做這個結(jié)構(gòu)體的成員
第二點:創(chuàng)建結(jié)構(gòu)體變量
上述實例中創(chuàng)建的就是“struct Student”的結(jié)構(gòu)體,然后類似于Python中類與對象關(guān)系,進行實例化,就是創(chuàng)建結(jié)構(gòu)體變量
第三:"結(jié)構(gòu)體.成員名"
第四點:"結(jié)構(gòu)體指針->成員名"
前面我們說過“int* a”,定義了一個指向int的指針a。那么這里對于我們自己創(chuàng)建的結(jié)構(gòu)體也是這樣的
當(dāng)然上述取成員的操作是正確的,但是太麻煩了,于是對于結(jié)構(gòu)體指針我們?nèi)〕蓡T名是用"->"
(11)表達式求值
A:隱式類型轉(zhuǎn)換
第一點:什么是整型提升
C語言的整型算數(shù)運算總是至少以整型類型的精度進行的,如下一個例子中最終的輸出結(jié)果可能會與我們所想的不一樣
在上述這個表達式中,字符或短整形操作數(shù)在使用前被轉(zhuǎn)換為了普通整形,這種轉(zhuǎn)換稱為整形提升
第二點:整形提升的規(guī)則
第三:整形提升的例子
實例1
實例2:
B:算數(shù)轉(zhuǎn)換
C:操作符的屬性
第一:復(fù)雜表達式求值順序的決定因素
1:操作符的優(yōu)先級
2:操作符的結(jié)合性(先考慮優(yōu)先級再考慮結(jié)合性)
3:是否控制求值順序
4:! > 算術(shù)運算符 > 關(guān)系運算符 > && > || > 賦值運算符
總結(jié)
以上是生活随笔為你收集整理的【C语言笔记初级篇】第五章:操作符的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Centos 7 安装NodeJS开发环
- 下一篇: PHP用CURL伪造IP和来源