按位运算符

基本运算符:

&:按位与运算符,可以对变量s的特定位清零,

      这时可以设置一个变量mask,将mask中的特定位赋值为0,其他位置为1,然后作运算“s = s&mask”,即可特定位清零。

      使用按位与运算,可以取变量s的指定位的值,这时可以设置一个变量mask,将mask中的指定位赋值为1,其他位置赋值为0,然后作运算“s = s&mask”,即可取指定位的值

| :按位或运算符,经常用按位或运算将一个变量s的某些位变为1,而其他位不变。这时可以设置一个变量mask,让mask中的特定位的赋值是1,其他位赋值为0,然后作运算“s         = s|mask”,即可。

^ :按位异或,可以使用按位异或运算让一个变量s的特定位的值取反,方法是:设置一个变量mask,让mask中的特定位的赋值是1,其他位赋值为0,然后作运算“s = s^mask”

<<或>> :将变量x左移n位,在不丢失有效数字的情况下,相当于将x乘以2的n次方。


关于位段运算:

1、位段的类型只能是int,unsigned int , signed int 3种类型,不能是其他类型。

2、位段所占的二进制位数不能超过该基本类型所能表示的最大位数。

3、无名位段不能被访问,但是会占据空间。

4、不能对位段进行取地址操作。

5、若位段占的二进制位数为0,则这个位段必须是无名位段,这表示下一个位段从下一个存储单元开始存放。



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值