位运算交换两个变量的值

int a = 4,b = 5;//a的二进制表示 0100 b的二进制表示0101
a = a^b;//  a 0001     b 0101
b = a^b;//  a 0001     b 0100
a = a^b;//  a 0101     b 0100

a^a = 0

一个数异或任何一个数偶数次值不变

猜你喜欢

转载自www.cnblogs.com/--lr/p/11761427.html