C 語言 6 2 其他運算 邏輯 條件 逗號

2021-10-03 07:06:45 字數 1486 閱讀 1797

前提:#include

可以使用:bool、true、false

eg:

#include

#include

intmain()

輸出後 b是等於1的(表示true),但是printf是不會表示成true或者false這個字元的。

變數型別還是沒有發生變化的!

• 邏輯運算是對邏輯量進⾏的運算,結果只有0或1

• 邏輯量是關係運算或邏輯運算的結果

易出錯:表達x∈(4,6) or 表達x∈[4,6]

錯誤:4正確:x>4 && x<6

eg:判斷大小寫字母 ?通過字元對應的asscii碼的大小關係來判斷

!(非)>&&(和)>||(或)

-優先順序總結-

邏輯運算的短路現象——如果左邊的結果已經能夠決定整個邏輯運算的結果,那麼就不會做右邊的計算

對於&&,左邊是false的情況

對於||,左邊是true的情況

?影響:如果右邊是賦值運算的話

eg:a==6&&b+=1

?忠告:不要把賦值包括在復合賦值,組合進邏輯判斷表示式裡

條件運算子——條件(?前)、條件滿足時的值(?後)、條件不滿足時候的值

eg:

count =

(count >20)

? count-

10: count+

10;

等價於——

if

(count>20)

else

條件運算子的優先順序——只比賦值運算子要高,比其他都低

【所以很麻煩!!!】

eg:w < x ? x + w : x < y ? x : y

?總結沒事別亂用條件運算子!!!

1.逗號⽤來連線兩個表示式,並以其右邊的表示式的值作為它的結果

2.逗號的優先順序是所有的運算子中最低的,所以它兩邊的表示式會先計算;

3.逗號的組合關係是⾃左向右,所以左邊的表示式會先計算,⽽右邊的表示式的值就留下來作為逗號運算的結果。

eg:i = 3+4, 5+6 ; i = (3+4,5+6) ;

4.應用:

在for的初始條件中放多個表示式

for ( i=0, j=10; i

C語言逗號運算子

在c語言中逗號 也是一種運算子,其功能是把兩個表示式連線起來組成乙個表示式,稱為逗號表示式。其一般形式為 表示式1,表示式2 其中用逗號分開的表示式的值分別運算,但整個表達上的值是最後乙個表示式的值。逗號運算子的優先順序是運算子中最低的,比其他運算子都低。例如 includeusing std ci...

C語言逗號運算子

在c語言中逗號 也是一種運算子,稱為逗號運算子。其功能是把兩個表示式連線起來組成乙個表示式,稱為逗號表示式。其一般形式為 表示式1,表示式2 其求值過程是分別求兩個表示式的值,並以表示式2的值作為整個逗號表示式的值。例3 19 逗號運算子舉例 複製純文字新視窗 include int main vo...

C語言逗號運算子和逗號表示式

c語言提供一種特殊的運算子 逗號運算子。用它將兩個表示式連線起來。如 3 5,6 8 稱為逗號表示式,又稱為 順序求值運算子 逗號表示式的一般形式為 表示式1,表示式2 逗號表示式的求解過程是 先求解表示式1,再求解表示式2。整個逗號表示式的值是表示式2的值。例如,上面的逗號表示式 3 5,6 8 ...