包含缓冲区值的文件。前16位包含类型。接下来的32位给出数据的长度。数据中的剩余值。
如何从16位中找到类型(如果是int或char ...,则查找)
我在这里虽然陷入了超级困境。无法找到一种将位转换为类型的方法。
最佳答案
假设您有家庭作业:
您会得到一个文件,其中第一位编码类型,
接下来的7位编码长度,其余为数据。
这些类型以以下方式编码:
0
用于int
1
用于字符
打印以换行符分隔的整数或字符。
您只使用给定的信息!由于1位用于编码类型,因此有两种可能的类型。因此,您只需阅读第一部分,然后执行:
if (bit == 0) {
int *i = ...
}
else if (bit == 1) {
char *c = ...
}
关于c++ - 从缓冲区输入的位,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/54971680/