基本上我想要做的是读取一个二进制文件,并在地址处提取4个连续值。 8000。例如,4个数字是89 ab cd ef。我想读取这些值并将它们存储到缓冲区中,然后将缓冲区转换为int类型。我曾尝试以下方法:C++。将二进制文件读入缓冲区后,如何以十六进制显示缓冲区?
ifstream *pF = new ifstream();
buffer = new char[4];
memset(buffer, 0, 4);
pF->read(buffer, 4);
当我试图
cout << buffer << endl;
什么也没有发生,我保证,有在这个位置是值(我可以查看十六进制查看器的二进制文件)。任何人都可以告诉我将缓冲区转换为int类型并正确显示它的方法吗?谢谢。
我假设你省略移动文件指针 – rerun
我不完全确定你的意思,但是当我尝试'tellout();'时,指针实际上移动了4个点。所以文件点正在移动。 –