C語言操作符優先級
| 優先級 |
運算符 |
含 義 |
要求運算 對象的個數 |
結合方向 |
| 1 |
() [] -> . |
圓括號 下標運算符 指向結構體成員運算符 結構體成員運算符 |
|
自左至右 |
| 2 |
! |
邏輯非運算符 |
1 (單目運算符) |
自右至左 |
| ~ |
按位取反運算符 |
|||
| ++ |
自增運算符 |
|||
| -- |
自減運算符 |
|||
| - |
負號運算符 |
|||
| (類型) |
類型轉換運算符 |
|||
| * |
指針運算符 |
|||
| & |
地址與運算符 |
|||
| sizeof |
長度運算符 |
|||
| 3 |
* / % |
乘法運算符 除法運算符 求余運算符 |
2 (雙目運算符) |
自左至右 |
| 4 |
+ - |
加法運算符 減法運算符 |
2 (雙目運算符) |
自左至右 |
| 5 |
<< >> |
左移運算符 右移運算符 |
2 (雙目運算符) |
|
| 6 |
< <= > >= |
關系運算符 |
2 (雙目運算符) |
自左至右 |
| 7 |
== != |
等於運算符 不等於運算符 |
2 (雙目運算符) |
自左至右 |
| 8 |
& |
按位與運算符 |
2 (雙目運算符) |
自左至右 |
| 9 |
^ |
按位異或運算符 |
2 (雙目運算符) |
自左至右 |
| 10 |
| |
按位或運算符 |
2 (雙目運算符) |
自左至右 |
| 11 |
&& |
邏輯與運算符 |
2 (雙目運算符) |
自左至右 |
| 12 |
|| |
邏輯或運算符 |
2 (雙目運算符) |
自左至右 |
| 13 |
? : |
條件運算符 |
3 (三目運算) |
自右至左 |
| 14 |
= += -= *= /= %= >>= <<= &= ^= |= |
賦值運算符 |
2 |
自右至左 |
| 15 |
, |
逗號運算符 |
|
自左至右 |
運算符優先級記憶方法:
