因运算符的优先级顺序不太好记忆,且易造成一些费解的问题。经整理后,希望对大家有所帮助:
序号 |
运算符 |
口诀 |
01 |
()(圆括号)[](数组下标). (成员选择(对象))->(成员选择(指针)) |
括号成员第一,全体单目第二 |
02 |
++(自增)--(自减)+(正)-(负) ! (逻辑非) ~(取反) &(取地址)sizeof(长度)*(取值)(type)(强制类型) | |
03 |
*(乘)/(除)%(余) |
乘除余三,加减四 |
04 |
+(加)-(减) | |
05 |
>>(右位移)<<(左位移) |
位移五,关系六 |
06 |
<(小于)>(大于) <=(小于等于)>=(大于等于) | |
07 |
==(等)!= (不等) |
等与不等排第七 |
08 |
&(位与) |
位与异或和位或,“三分天下”八九十 |
09 |
^(异或) | |
10 |
|(位或) | |
11 |
&&(逻辑与) |
逻辑或跟与,十二和十一 |
12 |
||(逻辑或) | |
13 |
? : (条件运算) |
条件高于赋值,逗号级别最低 |
14 |
= += -= *= /= %= |= ^= &= >>= <<= (赋值) | |
15 |
, (逗号) |
作者:邹祁峰
2012年12月11日