& 按位与 与0得0
| 按位或 置1得1
^ 按位异或 相同为0,相异为1
~ 按位取反
>> 右移 右移n位等价于让该数/2^n
<< 左移 左移n位等价于让该数*2^n
按位异或实现数据交换:
a=a^b;
b=a^b;
a=a^b;
将变量的第n位置1:
num=num | (1<<n)
将变量的第n位置0:
num=num & ~(1<<n)
& 按位与 与0得0
| 按位或 置1得1
^ 按位异或 相同为0,相异为1
~ 按位取反
>> 右移 右移n位等价于让该数/2^n
<< 左移 左移n位等价于让该数*2^n
按位异或实现数据交换:
a=a^b;
b=a^b;
a=a^b;
将变量的第n位置1:
num=num | (1<<n)
将变量的第n位置0:
num=num & ~(1<<n)