C有三个逻辑运算符。
| 运算符 | 含义 |
| && | 与 |
| || | 或 |
| ! | 非 |
一、改变拼写法:iso646.h
C99标准为逻辑运算符增加了可供选择的拼写法。它们在iso646.h头文件里定义。如果包含了这个头文件,就可以用and替代&&,用or替代||,用not替代!。
二、优先级
!运算符的优先级很高。它高于乘法运算,和增量运算符的优先级相同,仅次于圆括号。&&运算符的优先级高于||,这两者的优先级都低于关系运算符而高于赋值运算。
三、求值的顺序
逻辑表达式是从左到右求值的。&&和||运算符是序列的分界点。
四、范围
可以把&&运算符用于测试范围。
大量现有代码利用测试范围来检测一个字符是不是(比方说)小写字母。例如,假设ch字符是个char变量:
if(ch>='a'&&ch<='z')
printf("That is a lowercase character.\n");
进行这种测试的移植性更好的方法是使用ctype.h系列中的islower( )函数:
if (islower(ch))
printf("That is a lowercase character.\n");

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



