天天看點

【C語言】之運算符優先級别

熟記運算符優先級别技巧:

1、小括号

()

,中括号

[]

,結構成員通路操作符

->

.

優先級别最高!

2、所有單目運算符

~ ! ++ –- + - * & (type) sizeof

優先級别第二。

3、之後往下排:算術運算符 (

* / % + -

)、移位運算(

<< >>

)、關系算符(

> >= < <= == !=

)。

4、對于關系運算符:

==

!=

同一級别并且低于其它關系運算符。

5、關系運算符之後就是邏輯運算符:按位邏輯運算符(

& ^ |

)優先級别大于順序邏輯運算符(

&& ||

),與運算大于或運算,按位異或介于按位與和按位或之間。

6、最後三級别:條件運算符(三目運算符

? :

)、各種指派運算符、逗号表達式。

最後附上一張C語言運算符表

運算符 解釋 結合方式
() [] -> . 括号(函數),數組,兩種結構成員通路 自左向右
! ~ ++ -- + - * & (類型) sizeof 取反,按位取反,自增,自減,正負号,間接取值,取位址,類型轉換,求大小 自右向左
* / % 乘,除,取模 自左向右
+ - 加,減 自左向右
<< >> 左移,右移 自左向右
< <= >= > 小于,小于等于,大于等于,大于 自左向右
== != 等于,不等于 自左向右
& 按位與 自左向右
^ 按位異或 自左向右
| 按位或 自左向右
&& 邏輯與 自左向右
|| 邏輯或 自左向右
? : 條件運算符 自右向左
= += -= *= /= &= ^= |= <<= >>= 各種指派 自右向左
, 逗号運算符 自左向右

繼續閱讀