| 运算符 | 结合性 |
| () [] -> . |
自左至右 |
| ! ~ ++ -- - (type) * & sizeof |
自右至左 |
| * / % |
自左至右 |
| + - |
自左至右 |
| << >> |
自左至右 |
| < <= > >= |
自左至右 |
| == != |
自左至右 |
| & |
自左至右 |
| ^ |
自左至右 |
| | |
自左至右 |
| && |
自左至右 |
| || |
自左至右 |
| ?: |
自右至左 |
| = |
自右至左 |
| , |
自左至右 |
1.优先级最高的并不是真正意义上的运算符,包括数组下标,函数调用操作符和结构成员选择符。
2.单目运算符是所有真正意义上的运算符里优先级最高的。*p++等价于*(p++)。
3.优先级比单目运算符要低的就是双目运算符和三目运算符。它们的顺序是:算术运算符、移位运算符、关系运算符、逻辑运算符、赋值运算符、条件运算符。
4.任何一逻辑运算符的优先级都比任何一关系运算符要低。
5.移位运算符的优先级比算术运算符低,比关系运算符高。
原文:http://www.cnblogs.com/emailck/p/3889131.html