繁体   English   中英

C中的“ | =”运算符是什么意思?

[英]what does “|=” operator mean in C?

该代码如何工作:

int a = 1;
int b = 10;

a |= b;

a |= b; 作品? 似乎|=不是C中的运算符?

它像| + =运算符,类似于+ =的工作方式。

等同于

a = a|b;

我建议您阅读这篇有关运算符的文章: http : //en.wikipedia.org/wiki/Operators_in_C_and_C%2B%2B#Bitwise_operators这篇关于按位运算的文章http://en.wikipedia.org/wiki/Bitwise_operation

遵循例如+=

a |= b;
// Means the same thing as:
a = a | b;

也就是说,在ab中设置的任何位都应在a设置,而在这两个位置中均不设置的那些位不应在a设置。

那就是“按位或”相等。 它遵循加等于+= ,减等于-=等的模式。

a |= b; a = a | b;相同 a = a | b;

表达式a |= b; 等价于表达式a = a | b; a = a | b;

这是复合赋值运算符。 它的含义是:

a = a | b;

这和

a = a | b;

+= -=等相同

它是按位OR运算符 ,以及

a |= b;

和...一样

a = a | b;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM