C语言:位运算

&:与运算,相同位的两个数字都是1,就是1;有一个不是1,就是0;

|:或运算,相同位一个是1,就是1;

~:取反,0为1,1为0;

^:异或,相同为1,不同为0;

<<:左移,左移几位补几个0;

>>:右移,右移几位补几个符号位的值

用异或的方式实现数的交换:

cpp 复制代码
#include<stdio.h>



int main()
{
	int a = 1;
	int b = 2;

	a = a ^ b;
	b = a ^ b;
	a = a ^ b;

	return 0;
}
相关推荐
KookeeyLena86 分钟前
如何限制任何爬虫爬取网站的图片
开发语言·c++·爬虫
yanyanwenmeng25 分钟前
matlab基础
开发语言·算法·matlab
末央&41 分钟前
【C++】内存管理
java·开发语言·c++
不是仙人的闲人1 小时前
Qt日志输出及QsLog日志库
开发语言·数据库·qt
八了个戒1 小时前
【TypeScript入坑】TypeScript 的复杂类型「Interface 接口、class类、Enum枚举、Generics泛型、类型断言」
开发语言·前端·javascript·面试·typescript
疑惑的杰瑞1 小时前
[数据结构]算法复杂度详解
c语言·数据结构·算法
梦想科研社1 小时前
【无人机设计与控制】四旋翼无人机轨迹跟踪及避障Matlab代码
开发语言·matlab·无人机
Yan-英杰1 小时前
Encountered error while trying to install package.> lxml
开发语言·python·pandas·pip·issue
卡卡_R-Python1 小时前
海洋气象编程工具-Python
开发语言·python
爱学习的真真子1 小时前
菜鸟也能轻松上手的Java环境配置方法
java·开发语言