位运算符——运算符优先级
1)只有三个运算符的结合方向是从右向左,其余均为从左向右。
2)双目运算符只有赋值运算符的结合方向是从右向左。
3)单目运算(例如++自增、&取地址等)和三目运算(例如?:)的结合方向也是从右向左。
4)逗号运算符的优先级最低。
5)大致优先级为:
算术运算符 > 关系运算符 > 逻辑运算符(其中的逻辑非!运算级别很高,应排除在此外) > 赋值运算符 > 逗号运算符
6)若出现几种同优先级的运算符在一起,有以下类别:
.的优先级高于*
[]的优先级高于*
()的优先级高于*
==和!=的运算级高于位运算符和赋值运算符
算术运算符高于位移运算符
多用即熟练
附优先级一览表:C语言运算符优先级和结合性一览表 (biancheng.net)