c/c++语言开发共享C – 从一个字节中获取一点


可能重复:
如何从c中的整数值中逐位获取数据?

我有一个8位字节,我想从这个字节得到一点,比如getByte(0b01001100,3)= 1

    Firstoff, 0b前缀不是C而是C的GCC扩展。要获得uint8_t a的第3位的值,可以使用以下表达式:

     ((a >> 3) & 0x01) 

    如果设置了第3位,则将其评估为1;如果未设置第3位,则评估为0。

    首先,C 0b01...没有二进制常量,尝试使用hex常量。 第二:

     uint8_t byte; printf("%dn", byte & (1 << 2); 

    使用&运算符屏蔽到您想要的位,然后根据需要使用>>移动它。

    需要了解更多c/c++开发分享C – 从一个字节中获取一点,也可以关注C/ C++技术分享栏目---计算机技术网(www.ctvol.com)!

      以上就是c/c++开发分享C – 从一个字节中获取一点相关内容,想了解更多C/C++开发(异常处理)及C/C++游戏开发关注计算机技术网(www.ctvol.com)!)。

      本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

      ctvol管理联系方式QQ:251552304

      本文章地址:https://www.ctvol.com/c-cdevelopment/979981.html

      (0)
      上一篇 2021年12月13日
      下一篇 2021年12月13日

      精彩推荐