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;
}
相关推荐
Tomorrow'sThinker1 小时前
Python零基础学习第三天:函数与数据结构
开发语言·windows·python
元媛媛1 小时前
Python - 轻量级后端框架 Flask
开发语言·python·flask
钢板兽1 小时前
Java后端高频面经——Spring、SpringBoot、MyBatis
java·开发语言·spring boot·spring·面试·mybatis
爱吃柠檬呀1 小时前
《C陷阱与缺陷》读书笔记(一)
c语言·开发语言·算法·《c陷阱与缺陷》·编写程序
行码棋2 小时前
【Python】omegaconf 用法详解
开发语言·python
awonw2 小时前
[java][基础] 悲观锁 vs 乐观锁
java·开发语言
Trouvaille ~2 小时前
【Java篇】数据类型与变量:窥见程序的天地万象
java·开发语言·青少年编程·面向对象·数据类型·基础知识·入门必看
新停浊酒杯2 小时前
Java基础——java8+新特性——方法引用(::)
java·开发语言
flashier2 小时前
C语言 进阶指针学习笔记
c语言·笔记·学习
wxr的理想之路2 小时前
list链表的使用
c语言·数据结构·链表·list