2012-03-15 93 views
-1

我将一个字节保存到文件中。 如果我保存在第一个(二进制)a7和b5中,在hexdump中我可以找到b5a7。这样对吗?将字节保存到文件

添加代码:

char byte = 0; // this can change 
ofs.write((char*)byte,1); 
+1

那么,你为什么不试试呢? – 2012-03-15 14:41:44

+1

为什么?如果您将它们保存/加载为单词而不是字节,可能会出现这种情况。 – 2012-03-15 14:41:48

+0

我添加了我的代码预览。 – user42464677 2012-03-15 14:44:19

回答

4

不,不正常。如果你一次写一个字节,它们应该按照你写的顺序。如果你写一个两字节数量的字节交换会little-endian的机器上出现:

short x = 0xa7b5; 

fwrite(&x, 2, 1, some_file); 

现在(假设小端机)的文件将包含随后0xa7 0xB5执行。