優先順序1: ( )、[ ]、->、 .
含義:圓括號、下標運算子、指向結構體成員運算子、結構體成員運算子
優先順序2:!、~、++、――、-、(型別)、*、&、sizeof (單目運算子,結合方向自右至左)
含義:邏輯非、按位取反、自增、自減、負號、型別轉換、指標、位址與、長度運算子
優先順序3:*、/、%
含義:乘法、除法、求餘運算子
優先順序4:+、—
含義:加法、減法運算子
優先順序5:<<、>>
含義:左移、右移運算子
優先順序6:<、<=、>、>=
含義:關係運算子
優先順序7:==、!=
含義:等於、不等於運算子
優先順序8:&
含義:按位與運算子
優先順序9:^
含義:按位異或運算子
優先順序10:|
含義:按位或運算子
優先順序11:&&
含義:邏輯與運算子
優先順序12:||
含義:邏輯或運算子
優先順序13:?: (三目運算子,結合方向自右至左)
含義:條件運算子
優先順序14:=、+=、-+、*=、/=、%=、>>=、<<=、&=、^=、|= (結合方向自右至左)
含義:賦值運算子
優先順序15: ,
含義:逗號運算子
說明:結合方向大部分運算子都是常規的自左至右,單目運算子、三目運算子和賦值運算子除外,這三種運算子結合方向是自右至左。
優先順序簡記:非算移關與或條賦
解析:非指邏輯非運算子;算指算術運算子;移指移位運算子;關指關係運算子;或指按位與、按位異或及或運算子,邏輯與、邏輯或運算子;條指條件運算子;賦指賦值運算子;逗號運算子優先順序最低,其餘的運算子優先順序都很高。
後記:因為運算子的優先順序有時忘記了一些,而恰好手邊沒有合適的書籍參考,故記錄下來,為自己也為他人提供參考。不過建議程式設計時最好避免考慮優先順序的問題,多加幾個括號就可以了。
C C 運算子優先順序
c運算子優先順序 運算子及結合性 功能 用法 l 函式呼叫 name expr list 下標 variable expr 成員選擇 object.member 成員選擇 pointer member r 後輟自增 lvalue 後輟自減 lvalue r sizeof 前輟自增 lvalue 前輟...
C C 運算子優先順序
c語言中的運算子 說明 運算子結合性 初等運算子 單目運算子 型別 sizeof 算術運算子 算術運算子 移位運算子 關係運算子 關係運算子 按位與 按位異或 按位或 邏輯與 邏輯或 條件運算子 賦值運算子 逗號運算子 c 語言中的運算子 運算子描述結合性 二元作用域 一元作用域 typeid dy...
C C 運算子優先順序列表
c語言的操作符共有15個優先順序,如下 operators associativity left to right type sizeof right to left left to right left to right left to right left to right left to ri...