这个头文件提供 替代运算符拼写 的相关功能,例如 and、or、not 等。为逻辑运算符提供可读性更强的别名,支持更多键盘布局(如缺少 &、| 等符号的键盘)
| 宏 | 标准 | 说明 |
|---|---|---|
and |
C95 | 替代 && 运算符 |
and_eq |
C95 | 替代 &= 运算符 |
bitand |
C95 | 替代 & 运算符 |
bitor |
C95 | 替代 \| 运算符 |
compl |
C95 | 替代 ~ 运算符 |
not |
C95 | 替代 ! 运算符 |
not_eq |
C95 | 替代 != 运算符 |
or |
C95 | 替代 \|\| 运算符 |
or_eq |
C95 | 替代 \|= 运算符 |
xor |
C95 | 替代 ^ 运算符 |
xor_eq |
C95 | 替代 ^= 运算符 |
#include <stdio.h>
#include <iso646.h> // 提供 and, or, not 等替代运算符
int main(void) {
int a = 1, b = 0;
// 使用传统运算符
if (a == 1 && b == 0) {
printf("a == 1 && b == 0\n");
}
// 使用 iso646.h 的替代拼写
if (a == 1 and b == 0) {
printf("a == 1 and b == 0\n");
}
if (a == 1 or b == 1) {
printf("a == 1 or b == 1\n");
}
if (not (a == 0)) {
printf("not(a == 0)\n");
}
return 0;
}
运行结果:
a == 1 && b == 0
a == 1 and b == 0
a == 1 or b == 1
not(a == 0)