C++按位与(&)、按位或(|)和按位异或(^)

在C++中,按位与(&)、按位或(|)和按位异或(^)是位操作运算符,用于对二进制数的各个位进行逻辑运算。

  1. 按位与(&):对两个数的每一位进行与运算,只有当两个数对应位都为1时,结果的对应位才为1,否则为0。示例:

    cpp 复制代码
    int a = 5; // 二进制表示为 0101
    int b = 3; // 二进制表示为 0011
    
    int result = a & b; // 结果为 0001,即十进制的1
  2. 按位或(|):对两个数的每一位进行或运算,只有当两个数对应位至少有一个为1时,结果的对应位就为1,否则为0。示例:

    cpp 复制代码
    int a = 5; // 二进制表示为 0101
    int b = 3; // 二进制表示为 0011
    
    int result = a | b; // 结果为 0111,即十进制的7
  1. 按位异或(^):对两个数的每一位进行异或运算,当两个数对应位不相同时,结果的对应位为1,相同时为0。示例:

    cpp 复制代码
    int a = 5; // 二进制表示为 0101
    int b = 3; // 二进制表示为 0011
    
    int result = a ^ b; // 结果为 0110,即十进制的6

这些位操作运算符在处理硬件控制、密码学和图像处理等领域中经常使用,可以高效地进行位级操作。

相关推荐
全栈陈序员16 小时前
【Python】基础语法入门(九)—— 代码规范、调试技巧与性能初探
开发语言·python·代码规范
乌萨奇也要立志学C++16 小时前
【洛谷】二分查找专题 告别二分死循环!模板 + 细节 + 实战
c++·算法
合作小小程序员小小店16 小时前
图书管理系统,基于winform+sql sever,开发语言c#,数据库mysql
开发语言·数据库·sql·microsoft·c#
Yue丶越16 小时前
【C语言】数据在内存中的存储
c语言·开发语言·网络
Rock_yzh16 小时前
LeetCode算法刷题——128. 最长连续序列
数据结构·c++·算法·哈希算法
wheeldown17 小时前
【Rokid+CXR-M】基于Rokid CXR-M SDK的博物馆AR导览系统开发全解析
c++·人工智能·ar
FakeOccupational17 小时前
电路笔记(信号):网线能传多少米?网线信号传输距离
开发语言·笔记·php
李宥小哥17 小时前
Redis10-原理-网络模型
开发语言·网络·php
利刃大大17 小时前
【c++中间件】语音识别SDK && 二次封装
开发语言·c++·中间件·语音识别
晨非辰17 小时前
C++ 波澜壮阔 40 年:从基础I/O到函数重载与引用的完整构建
运维·c++·人工智能·后端·python·深度学习·c++40周年