gpt4 book ai didi

c++ - 如何在 C++ 中获取 char 的最低有效 3 位?

转载 作者:太空宇宙 更新时间:2023-11-04 15:23:05 27 4
gpt4 key购买 nike

以下文字是我在一份文档中所坚持的内容。

The least significant 3 bits of the first char of the array indicates whether it is A or B. If the 3 bits are 0x2, then the array is in a A format. If the 3 bits are 0x3, then the array is in a B format.

这是我一生中第一次接触到这种最低有效位的东西。在 StackOverflow 上搜索后,这就是我所做的:

int lsb = first & 3;
if (lsb == 0x02)
{
// A
}
else if (lsb == 0x03)
{
// B
}

这是正确的吗?在我继续之前,我想确保这是正确的方法(并避免以后把我的脚吹走)。

最佳答案

x 的最低有效 3 位是使用 x&7 获取的,这与您使用的 first & 3 不同。事实上,first & 3 将占用 first 的最低有效 2 位。

您应该将数字转换为二进制以理解为什么会这样:二进制中的 3 是 11,而 7 是 111

关于c++ - 如何在 C++ 中获取 char 的最低有效 3 位?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14672201/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com