2.6 C語言基礎
2.6 csd14030403am
加減乘除和取餘操作符(+,-,*,/,%)
,也是一個操作符
,操作符可以把兩個表示式合併成一個,合併後表示式的計算結果是後一個表示式的結果
,操作符的優先順序比賦值操作符低
一條語句中可以多次使用賦值操作符,這時優先計算右邊的賦值操作符
布林值包括真和假兩個
計算機內部使用1表示真,0表示假
C語言中可以把任一個整數當布林值使用,整數0當做布林值使用是假,其他整數當布林值使用時是真
邏輯表示式的計算結果只能是布林值
邏輯表示式需要使用邏輯操作符編寫
雙目邏輯操作符包括==(相等),!=(不等),>(大於),<(小於),>=(大於等於),<=(小於等於)
!是一個單目邏輯操作符,它可以寫在一個布林值的左邊,它可以把原來的布林值變成相反數
雙目邏輯操作符只能用來編寫簡單的邏輯表示式(只包含一個雙目邏輯操作符的邏輯表示式)
多個邏輯表示式可以採用與(&&)和或(||)連線
採用與(&&)連線的多個邏輯表示式只有當所有簡單邏輯表示式的結果都是真的時候合併後複雜表示式結果才是真,否則是假
採用或(||)連線的多個邏輯表示式只要有一個簡單邏輯表示式的結果是真則合併後的表示式結果就是真,否則是假
與和或這兩個邏輯操作符都有短路特性,如果前一個表示式的結果可以決定整個表示式的結果
邏輯操作符的優先順序低於算數操作符
位操作符直接操作二進位制數位
雙目操作符包括按位與(&),按位或(|)和按位異或(^)
雙目位操作符先把兩個參與計算數字的二進位制表示方式寫出來,然後把它們對應數位之間進行計算
按位與(&)把對應數位上的數字做與計算
按位與可以把某些二進位制數位清0
按位或(|)把對應數位上的數字做或計算
按位或可以把某些二進位制數位置1
任何數位和1做按位或計算結果是1,和0做按位或結果不變
按位異或(^)把對應數位上的數字做異或計算
按位異或可以把某些二進位制數位上的數字求反
任何數位和1做異或結果變成相反數值,和0做異或結果不變
~是一個單目位操作,它可以對一個數字的每個二進位制數位求反
可以對位元組中的所有二進位制數位向左或向右移動n個位置,為了實現該效果需要使用移位操作符
<<表示向左移位
表示向右移位
他們都是雙目操作符,需要左右各有一個數字。左邊的數字要進行移位操作,右邊的數字表示移動的位數
他們不會改變左邊數字的內容
如果在移位過程中沒有丟失有效數位,則左移n位相當於乘以2的n次方,右移n位相當於除以2的n 次方
左移是右邊的位置上一定補0
無符號型別整數右移時左邊的空位置上一定補0,有符號型別整數右移時左邊的空位置上一定補符號位
&操作符可以根據一個變數或儲存位置獲得地址資料
*操作符可以根據一個地址獲得對應的儲存位置
三目操作符可以根據一個布林值從兩個不同的表示式中選擇一個進行計算
三目操作符的使用方法如下
布林值?表示式1:表示式2
布林值為真則採用前面的表示式,否則採用後面的表示式