data.bin
文件的前几个字节为:03 56 04 FF FF FF ...
我的实现是:
#include <iostream>
#include <fstream>
int main()
{
struct header {
unsigned char type;
unsigned short size;
} fileHeader;
std::ifstream file ("data.bin", std::ios::binary);
file.read ((char*) &fileHeader, sizeof header);
std::cout << "type: " << (int)fileHeader.type;
std::cout << ", size: " << fileHeader.size << std::endl;
}
我期望的输出是
type: 3, size: 1110
,但出现了 type: 3, size: 65284
的结果,因此文件中的第二个字节被跳过了。这是怎么回事呢?
sizeof(header)
是多少?我敢打赌它是4
... - Cameron