& 按(二进制)位与 只要有0就为0
| 按(二进制)位或 只要有1就为1
^ 按(二进制)位异或 相同为0,相异为1
位异或的一些规律:
a^a=0
a^0=a
a ^b^a=b
a^a^b=b
//在不创建第三变量的前提下,实现两个数的交换#include int main(){ int a=3; int b=5; printf("交换前:a=%d,b=%d",a,b); //运用位异或实现交换 a=a^b; //3^5 b=a^b; //3^5^5 a=a^b; //3^5^3 printf("交换后:a=%d,b=%d",a,b); return 0;}
京公网安备 11010502049817号