基础数据类型的操作与位运算符详解
1. 运算符优先级与结合性
在表达式计算中,运算符的优先级和结合性至关重要。 * 和 / 运算符优先级高于 + 和 - 。例如表达式 x*y/z ,会先计算 x*y/z 的结果,记为 r ,因为 * 和 / 是左结合的,所以实际计算顺序为 (x*y)/z 。接着计算 r-b+c-d ,由于 + 和 - 也是左结合的,所以计算顺序为 ((r-b)+c)-d ,即整个表达式等价于 ((((x*y)/z) - b) + c) - d 。
要记住所有运算符的优先级和结合性并非易事,当不确定时,可添加括号确保表达式按预期顺序执行。C++ 标准虽未直接定义运算符优先级,但由语法规则决定。多数情况下,从运算符优先级判断表达式执行顺序比从语法规则判断更简便。
2. 位运算符概述
位运算符可对整数变量进行位级操作,可用于任何整数类型(有符号和无符号),包括 char 类型,但通常用于无符号整数类型。其典型应用包括设置整数变量的单个位,单个位常作为标志,用于存储具有两种状态的值,如开/关、男/女、真/假等。
位运算符还可处理存储在单个变量中的多个信息项
超级会员免费看
订阅专栏 解锁全文
1731

被折叠的 条评论
为什么被折叠?



