我有一个char[]数组中的大块二进制数据,我需要将其解释为一组紧密打包的6位值。
我可以写一些代码来完成这个任务,但我认为肯定已经有人写过一个好的类或函数了。
我需要的是像这样的东西:
int get_bits(char* data, unsigned bitOffset, unsigned numBits);
通过调用以下方法,我可以获取数据中的第7个6位字符:
const unsigned BITSIZE = 6;
char ch = static_cast<char>(get_bits(data, 7 * BITSIZE, BITSIZE));