運算符是一種告訴編譯器執行特定的數學或邏輯操作的符號。
C語言內置了豐富的運算符,大體可分為10類:算術運算符、關系運算符、邏輯運算符、位操作運算符、賦值運算符、條件運算符、逗號運算符、指針運算符、求字節數運算符和特殊運算符。
根據運算符可操作的操作數的個數,可把運算符分為一元運算符、二元運算符和多元運算符(一般三元)。
1、算數運算符
用于數值計算,包括:加(+)、減(-)、乘(*)、除(/)、求余(%)、自增(++)、自減(--)。
2、關系運算符
用于比較運算,包括:大于(>)、小于(<)、等于(==)、大于等于(>=)、小于等于(<=)、不等于(!=)。
3、邏輯運算符
用于邏輯運算,包括:與(&&)、或(||)、非(!)。
4、位操作運算符
按二進制位進行運算,包括:位與(&)、位或(|)、位非(~)、 位異或(^)、左移(<<)、右移(>>)。
5、賦值運算符
用于賦值運算,包括:簡單賦值(=)、復合算術賦值(+=、-=、*= 、/=、%=)以及復合位運算賦值(&=、|=、^=、>>=、<<=)等。
6、條件運算符
用于條件求值,三目運算符:(x > y) ? x : y。C語言中有且只有這一個三目運算符。
7、逗號運算符
用于把若干表達式組合成一個表達式:表達式1 , 表達式2。
8、指針運算符
用于取內容(*)和取地址(&)兩種運算。
9、求字節數運算符
用于計算數據類型所占的字節數(sizeof)。
10、特殊運算符
包括括號()、數組下標[]、成員(-> 和 .)等。
比如式子“x = 1 + 2 * 3 / 4”,需要先計算乘再計算除,然后是加,最后是賦值。這里介紹下關于運算符在參與運算過程中的兩個概念:
優先級:當不同運算符優先級不同時,先計算誰后計算誰
結合性:當不同運算符優先級相同時,先計算誰后計算誰
運算符的優先級和結合性
作為初學者,當一個表達式中有多個運算符時,如果不知道哪個優先級高哪個優先級低就可以查一下優先級表,等用的時間長了自然而然就記住了。而且,事實上在編程的時候也不需要考慮優先級的問題。因為如果不知道優先級高低的話,加一個括號就可以了,因為括號( )的優先級是最高的。
另外,大多數運算符的結合性都是從左往右。從右向左的一個是單目運算符,另一個是三目運算符,還有一個就是雙目運算符中的賦值運算符=。運算符的“結合性”也不用死記,在不斷使用中就記住了。
-
C語言
+關注
關注
180文章
7614瀏覽量
137702 -
編譯器
+關注
關注
1文章
1642瀏覽量
49283 -
數組
+關注
關注
1文章
417瀏覽量
26027
發布評論請先 登錄
相關推薦
評論