我有一个程序需要读取二进制文本。我通过重定向读取二进制文本:
readData 将是我的 Makefile 生成的可执行文件。
示例:readData < binaryText.txt
我想要做的是读取二进制文本,并将二进制文本文件中的每个字符作为字符存储在 char 数组中。二进制文本由 32 组成这是我这样做的尝试......
unsigned char * buffer;
char d;
cin.seekg(0, ios::end);
int length = cin.tellg();
cin.seekg(0, ios::beg);
buffer = new unsigned char [length];
while(cin.get(d))
{
cin.read((char*)&buffer, length);
cout << buffer[(int)d] << endl;
}
但是,我一直在这方面遇到分段错误。可能有人对如何将二进制文本读入 char 数组有任何想法吗?谢谢!