C++中运算符|=和&=的具体含义

2 篇文章 0 订阅

我们在C/C++语言中经常会碰到 && 和 || 运算符,当然也很清楚它们的具体含义,无非就是与和或的解释,再延伸一下就知道运算符 & 和 | 的大概含义。

& 在C/C++语言中可能表示两种运算符。

如果运算对象只有一个,且为右操作数,那么&为取地址运算符,结果为操作对象的地址。例如&a(假设a是一个左值,即具有具体的可访问的地址)结果为a的地址。
如果运算对象有两个,那么&表示位与运算。结果中的每一个二进制位等于两个运算数的对应位置的二进制位按位与。每一个位的位与运算法则是,当且仅当运算数都为1时结果为1,即:1 & 1 == 1,1 & 0 == 0 & 1 == 0 & 0 == 0。

所以如果将 & 和 | 仅仅当位与和位或运算符来讲, |= 和 &= 即为两个对象位或和位与的运算变形,举例如下:

                     a|=b等价于a=a|b;
                     同理a&=b等价于a=a&b

  • 11
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值