我在循环中保存一个字节到文件。 如果我保存在第一个(二进制)a7然后b5,在hexdump中我可以找到b5a7。是不是?
添加了代码:
char byte = 0; // this can change
ofs.write((char*)byte,1);
答案 0 :(得分:4)
不,不正常。如果你一次写一个字节,它们应该按你编写的顺序排列。如果你写一个双字节的数量,字节交换将在小端机器上发生:
short x = 0xa7b5;
fwrite(&x, 2, 1, some_file);
现在(假设一个小端机器)该文件将包含0xb5,后跟0xa7。