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;
}
相关推荐
牛奔5 小时前
Go 如何打印调试深层或嵌套的结构体
开发语言·后端·golang
2601_951644325 小时前
C语言二级备考指南
c语言·编程基础·编译环境·二级考试·题库选择
geovindu6 小时前
go: Iterative Algorithms
开发语言·后端·算法·golang·迭代算法
学逆向的6 小时前
汇编——JCC指令
开发语言·汇编·网络安全
mayaairi6 小时前
JS循环语句深度解析:嵌套for、while与do...while
开发语言·前端·javascript
kite01217 小时前
Go语言Map深度解析与最佳实践
开发语言·后端·golang
l156469489 小时前
突围!图文混合知识库难以解析,Kimi-K3 原生视觉架构深耕知识工作,DMXAPI 统一接口,缩短项目开发周期
java·大数据·开发语言
charlie1145141919 小时前
现代C++工程实践 WeakPtr 实战(三):WeakPtrFactory 与「最后成员」惯用法
开发语言·c++·开源项目·现代c++
日拱一卒——功不唐捐10 小时前
红黑树删除(C语言)
c语言·数据结构
IT小盘10 小时前
04-大模型流式输出原理-SSE与Python实现
开发语言·网络·人工智能·python