21xrx.com
2024-11-05 21:44:54 Tuesday
登录
文章检索 我的文章 写文章
C++中的或运算符
2023-07-13 18:48:54 深夜i     --     --
或运算符 逻辑运算符 条件表达式 二进制运算 位运算

在C++中,或运算符(|)是一种用于比较两个值的逻辑运算符。它的返回值为真(true)只要其中一个操作数为真即可。

下面是或运算符的一些常见用法:

1. 比较两个二进制数的位,并返回结果


int a = 12; //二进制 1100

int b = 9; //二进制 1001

int c = a | b; //二进制 1101,即13

在上面的代码中,或运算符对a和b的二进制位进行比较。只要其中一个位为1,结果就将对应到c中。

2. 用于逻辑条件语句


bool x = true;

bool y = false;

if (x | y)

  //执行此代码块

在这个例子中,如果x或y为true,则if语句将执行。因为or运算符只要一个操作数为true就返回true。

3. 用于位掩码操作


const unsigned int flagA = 1;   //0001

const unsigned int flagB = 2;   //0010

const unsigned int flagC = 4;   //0100

const unsigned int flagD = 8;   //1000

在这个例子中,每个标志位都占据了二进制的一个位,这些标志位通常被称为“位标志”。最初的数值设置成2进制1、2、4、8、16等等。然后,可以在一个32位整数上设置多个标志位。例如,要将flagA和flagC设置在一个值d中,可以将它们放在一起,如下所示:


unsigned int d = flagA | flagC; //0101

在这个例子中,使用|运算符将二进制标志位组合在一起,得到一个新的二进制值。

总之,或运算符在C++中是一种非常有用的运算符,它能够在许多不同的情况下获取正确的结果。当需要比较两个二进制数的位或在逻辑条件语句中使用它时,或运算符总是可靠而高效的选择。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复