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

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

相关推荐
朔北之忘 Clancy6 小时前
2025 CSP-J 第二轮真题解析
c++·青少年编程·题解·noip·csp·信奥赛·noi
longlongzihan6 小时前
LeetCode 17电话号码的字母组合:回溯算法(DFS)详解
c++·算法·leetcode·深度优先
落魄实习生6 小时前
Agent Scope Java 2.x 系列【7】工具使用
java·开发语言·ai
yolo_guo6 小时前
调试mysql延迟与libevent回调实际发送回复时机问题
c++·mysql·libevent
茉莉玫瑰花茶7 小时前
GO [ 方法 ]
开发语言·后端·golang
今晚打老虎7 小时前
c++之提高A(前缀和)(第三课)
数据结构·c++·算法
狗凯之家源码网7 小时前
微博图床 PHP 系统搭建与实战应用指南
android·开发语言·php
by209999 小时前
从结构体到对象:正式学习C++类的骨架、封装与this指针
c++·经验分享·学习
乌暮9 小时前
深入理解 Java 泛型:把「万能盒子」用对、用稳
java·开发语言·后端·学习
2601_962218619 小时前
C语言中三种库的编译和使用方法
开发语言·c++