赞
踩
C++/C语言的运算符有数十个,运算符的优先级与结合律如表4-1所示。注意一元运算符 + - * 的优先级高于对应的二元运算符。
优先级 | 运算符 | 结合律 |
从
高
到
低
排
列 | ( ) [ ] -> . | 从左至右 |
! ~ ++ -- (类型) sizeof + - * & | 从右至左
| |
* / % | 从左至右 | |
+ - | 从左至右 | |
<< >> | 从左至右 | |
< <= > >= | 从左至右 | |
== != | 从左至右 | |
& | 从左至右 | |
^ | 从左至右 | |
| | 从左至右 | |
&& | 从左至右 | |
|| | 从右至左 | |
?: | 从右至左 | |
= += -= *= /= %= &= ^= |= <<= >>= | 从左至右 |
表4-1 运算符的优先级与结合律
l 【规则 4-1-1 】如果代码行中的运算符比较多,用括号确定表达式的操作顺序,避免使用默认的优先级。
由于将表4-1熟记是比较困难的,为了防止产生歧义并提高可读性,应当用括号确定表达式的操作顺序。例如:
word = (high << 8) | low
if ((a | b) && (a & c))
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。