C——位运算

1、位运算符和位运算

运算符 含义 运算符 含义
& 按位与 ~ 取反
| 按位或 << 左移
^ 按位异或 >> 右移
  • 优先级:~ —><<、>> —>&、^、|
  • 取反(~)技巧:
    1. 正数结果为-(正数+1)
    2. 负数结果为-(负数+1)
    3. `x=-(x+1)
  • 左移运算符(<<)
    1. 用来将一个数的各位二进制全部左移若干位
    2. 将所有的二进制数左移n位,右侧补0
    3. 规则:左移n位就乘2n
  • 右移运算符(>>)
    1. 用来将一个数的各二进制全部右移若干位
    2. 将所有的二进制数右移n为,右端末尾舍弃
    3. 规则:左移n位就除以2n

2、复合位运算符

  1. 类型:&=、|=、^=、<<=、>>=

  2. 例如:

    a&=b等价于a=a&b
    a>>=2等价于a=a>>2
    

3、位运算特点

0 1
按位& 清零 不变
按位| 不变 置1
按位^ 不变 翻转

猜你喜欢

转载自blog.csdn.net/qq_45042462/article/details/125925160