第五章 选择语句 🚀
5.1.3 逻辑运算符 🚀
运算符!的优先级和一元正负号的优先级相同,运算符&&和运算符||的优先级低于关系运
算符和判等运算符。例如,表达式i < j && k == m 等价于表达式(i < j) && (k == m)。
运算符!是右结合的,而运算符&&和运算符||都是左结合的。
5.2 if 语句 🚀
5.2.4 “悬空 else”的问题 🚀
当if语句嵌套时,千万当心著名的“悬空else”的问题。思考下面这个例子:
5.2.5 条件表达式 🚀
条件运算符(conditional operator)由符号?和符号:组成,两个符号必须按如下格式一起使用:
5.2.6 C89 中的布尔值 🚀
多年以来,C语言一直缺乏适当的布尔类型,C89标准中也没有定义布尔类型。因为许多程
序需要变量能存储假或真值,缺少布尔类型可能会有点麻烦。
针对C89的这一限制,一种解决方法是先声明一个int型变量,然后将其赋值为0或1:
5.2.7 C99 中的布尔值 🚀
长期缺乏布尔类型的问题在C99中得到了解决。 C99提供了_Bool型,所以在C语言的
这一版本中,布尔变量可以声明为: