單片機C語言知識點全攻略(三)
變量 復(fù)合賦值運算符 表達式 其含義就是變量與表達式先進行運算符所要求的運算,再把運算結(jié)果賦值給參與運算的
變量。其實這是 C 語言中一種簡化程序的一種方法,凡是二目運算都能用復(fù)合賦值運算符 去簡化表達。例如:
a+=56 等價于 a=a+56
y/=x+9 等價于 y=y/(x+9) 很明顯采用復(fù)合賦值運算符會降低程序的可讀性,但這樣卻能使程序代碼簡單化,并
能提高編譯的效率。對于開始學習 C 語言的朋友在編程時最好還是根據(jù)自己的理解力和習慣去使 用程序表達的方式,不要一味追求程序代碼的短小。
逗號運算符
如果你有編程的經(jīng)驗,那么對逗號的作用也不會陌生了。如在 VB 中“Dim a,b,c”的逗 號就是把多個變量定義為同一類型的變量,在 C 也一樣,如“int a,b,c”,這些例子說明逗 號用于分隔表達式用。但在 C 語言中逗號還是一種特殊的運算符,也就是逗號運算符,能 用它將兩個或多個表達式連接起來,形成逗號表達式。逗號表達式的一般形式為:
表達式 1,表達式 2,表達式 3……表達式 n
這樣用逗號運算符組成的表達式在程序運行時,是從左到右計算出各個表達式的值,而 整個用逗號運算符組成的表達式的值等于最右邊表達式的值,就是“表達式 n”的值。在實 際的應(yīng)用中,大部分情況下,使用逗號表達式的目的只是為了分別得到名個表達式的值,而 并不一定要得到和使用整個逗號表達式的值。要注意的還有,并不是在程序的任何位置出現(xiàn) 的逗號,都能認為是逗號運算符。如函數(shù)中的參數(shù),同類型變量的定義中的逗號只是用來 間隔之用而不是逗號運算符。
條件運算符
上面我們說過單片機C語言中有一個三目運算符,它就是“?:”條件運算符,它要求有三個運算對象。它能把三個表達式連接構(gòu)成一個條件表達式。條件表達式的一般形式如下:
邏輯表達式? 表達式 1 : 表達式 2 條件運算符的作用簡單來說就是根據(jù)邏輯表達式的值選擇使用表達式的值。當邏輯表達
式的值為真時(非 0 值)時,整個表達式的值為表達式 1 的值;當邏輯表達式的值為假(值
為 0)時,整個表達式的值為表達式 2 的值。要注意的是條件表達式中邏輯表達式的類型可 以與表達式 1 和表達式 2 的類型不一樣。下面是一個邏輯表達式的例子。
如有 a=1,b=2 這個時候我們要求是取 ab 兩數(shù)中的較小的值放入 min 變量中,也許你會這樣 寫:
if (a《b)
min = a;
else
min = b; //這一段的意思是當 a《
評論