C 库 - <iso646_h.h>

C 库头文件 <iso646_h.htm> 允许使用替代运算符,例如 andxornot 等,这些运算符返回特定的值。例如,在布尔表达式中使用"and"代替 && 可以提高代码的可读性。

从头文件 iso646.h 派生出了 11 个宏 -

Macro Token
and &&
and_eq &=
bitand &
bitor |
compl
not !
not_eq !=
or ||
or_eq |=
xor ^
xor_eq ^=

示例

以下是 C 库头文件 <iso646_h.htm>,用于查看使用替代("and")运算符的两个数字的演示。

#include <stdio.h>
#include <iso646.h>

int main() {
   int a = 5;
   int b = 3;
   
   // 使用替代的"与"运算符
   int sum = a and b; 

   printf("Sum of %d and %d = %d", a, b, sum);
   return 0;
}

输出

上述代码产生以下结果 -

Sum of 5 and 3 = 1

示例

我们创建一个程序,使用异或运算符 (xor) 交换两个数字。

#include <stdio.h>
#include <iso646.h>

int main() {
   int x = 5;
   int y = 3;

   // 使用替代的"xor"运算符
   x = x xor y; 
   y = x xor y;
   x = x xor y;

   printf("After swapping: x = %d, y = %d", x, y);
   return 0;
}

输出

执行上述代码后,我们得到以下结果 -

After swapping: x = 3, y = 5

示例

下面的程序使用二选一运算符计算两个值的逻辑"and"(与)。

#include <stdio.h>
#include <iso646.h>
int main() {
    int bool1 = 1;
    int bool2 = 0;

    int result = bool1 and bool2; 

    printf("Logical AND of %d and %d = %d", bool1, bool2, result);
    return 0;
}

输出

执行代码后,我们得到以下结果 -

Logical AND of 1 and 0 = 0