我有一个文件,其中包含如下数据:
1F B8 08 08 00 00 00 00
我正在将它读入一个 int,将其转换为一个字符,并将其存储在一个数组中。
int n, i = 0;
char c;
while (ifs >> std::hex >> n) {
c = static_cast<unsigned char>(n);
r[i++] = c;
}
工作正常。如果数据中没有空格,我该怎么做,即
1FB8080800000000
上面的代码只是将 n 填充到 maxint 并退出。我可以使用 getc 等创建一些东西,但我希望 C++ 代码能够处理这两种情况。