l位於庫stdbool.h
l之後就可以使用bool和true、false
使用bool函數後,便可對變量進行邏輯上的定義,當然,也可以將數值賦值到這些變量,輸出的時候也只能輸出數值,如果值為真輸出1,假為0
Part2:邏輯運算邏輯運算l邏輯運算是對邏輯量進行的運算,結果只有0或1
l邏輯量是關係運算或邏輯運算的結果
運算符
描述
實例
結果
!
邏輯非
!a
如果a是true結果就是false,如果a是false結果就是true
&&
邏輯與
a&&b
如果a和b都是true,結果就是true,否則就是false
||
邏輯或
a||b
如果a和b有一個是true,結果為true,兩個都是false,結果為false
Tryl如果要表達數學中的區間,如:x(4,6)或x[4,6],應該如何寫C的表達式
所以我們寫成這樣的式子x>4&&x<6
l如何判斷一個字符c是否是大寫字母?
c>=』A』&&c<=
理解一下lage>20&&age<30
lindex<0||index>99
l!age<20 先進行!age,後進行<的判斷,所以一直是1,那麼它怎麼樣才能做到運算結果是,判斷age不是小於20的值的真假呢?
優先級優先級
運算符
結合性
1
()
從左到右
2
! + - ++ --
從右到左(單目的+和-)
3
* / %
從左到右
4
+ -
從左到右
5
< <=> >=
從左到右
6
== !=
從左到右
7
&&
從左到右
8
||
從左到右
9
= += -= *= /= %=
從右到左
短路l邏輯運算是自左向右進行的,如果左邊的結果已經能決定結果了,就不會做右邊的運算
l對於&&,左邊是false時就不做右邊了
l對於||,左邊是true時就不做右邊了
所以不要把賦值,包括複合賦值組合進表達式
條件運算和逗號運算條件運算符lcount=(count>20)?count-10:count+10;
l上面可以歸結條件運算符的寫法:條件?條件滿足時的值:條件不滿足時的值
優先級l條件運算符的優先級高於賦值運算符,但低於其他運算符
嵌套條件表達式一般不建議使用,感興趣請自己查來運算
逗號運算l逗號用來連接兩個表達式,並以其右邊的表達式的值作為它的結果。逗號的優先級是所有運算符中最低的,所以它兩邊的表達式會先計算;逗號的組合關係是自左向右,所以左邊的表達式會先計算,而右邊的表達式的值就留下來做逗號運算的結果。
l這裡主要是在for中使用,這樣就可以進行多個運算