算术运算符
算术运算符按照优先级分为三个等级:
- 整数相除的结果还是整数,C++11新标准规定,除法一律向0取整(直接切除小数部分)。
- 取余运算,参与运算的对象必须是整数类型。
(-m)/n = m/(-n) = -(m/n)
m%(-n) = m%n;(-m)%n = -(m%n)
逻辑和关系运算符
逻辑和关系运算符求值结果都是右值。
逻辑与和逻辑或
逻辑与和逻辑或运算符斗志先求左侧运算对象的值,再求右侧运算对象的值,当且仅当左侧运算对象无法确定表达式的结果时才会计算右侧运算对象的值,这种策略称为短路求值。