c++第二十四天

p126~p128:

1、关系运算符作用于算数类型和指针类型。

2、逻辑运算符作用于任意能转换成布尔类型值的类型。

3、以上两种运算的运算对象运算结果都是右值

4、逻辑与和逻辑或的运算策略:短路求值

(左侧对象通常是为了确保右侧运算对象求值过程的正确性和安全性

5、补充的几点:

1)用 &s访问字符串可以避免对元素的拷贝。

2)如果想测试一个算数对象或指针的真值,最好直接将其作为if 的条件。例如:if(!val)...

3)布尔类型转换为其它类型结果为 0 或 1,而其它类型转换为布尔类型,凡是不是 0 的结果都为 true。


6、优先级方面,暂时记住运算符是关系运算符中优先级别最高的,关系运算符总比逻辑运算符优先级高,运算符比运算符优先级高,

赋值运算符优先级很低。

练习 4.8
p126 见表 4.2

练习 4.9
先判断指针是否为空,如果为空则不再计算右侧对象,返回false,

如果不为空则继续计算右侧字符串的值,若空则返回false否则返回true。

练习 4.11

if (a > b && b > c && c > d) 

 

练习 4.12

!=的优先级要比<的低,先计算j<k返回一个布尔值后转化为整数0或者1,之后再与i比较。

相当于 i != (j < k)。

原文地址:https://www.cnblogs.com/xkxf/p/6490706.html