标签导航:
在 c 语言中,“|”运算符用于按位或运算,它逐位比较两个整数,若对应位中至少一位为 1,则结果位为 1,否则为 0。用途包括:设置标志位、提取特定位、合并数据以及检查位模式。

c语言中|的用法

C语言中“|”的用法

在C语言中,“|”运算符表示按位或运算。它逐位比较两个整数,如果对应的位中至少有一位为1,则结果位为1;否则结果位为0。

语法:

result = expression1 | expression2;

其中:

  • result 是结果变量。
  • expression1 和 expression2 是要进行按位或运算的整数表达式。

示例:

int a = 5;  // 二进制表示:0101
int b = 3;  // 二进制表示:0011

int result = a | b;  // 按位或运算

// 结果:0111(二进制),转换为十进制为 7

用途:

按位或运算在以下情况下非常有用:

  • 设置标志位:将一个位设置为1,而不影响其他位。
  • 提取特定位:通过按位或运算来提取特定位的掩码。
  • 合并数据:从两个或多个来源中组合位模式。
  • 检查位模式:确定特定位的状态。

注意:

  • 按位或运算只适用于整数类型。
  • 运算结果的类型与运算数的类型相同。
  • 与逻辑或运算符(||)不同,按位或运算符不进行短路求值。