0
我想写一个二进制表示的整数到一个文件中,接受我将在文件中获得十六进制格式,但是我没有得到预期的结果。fwrite文件输出是错误的
uint32_t a = 1;
FILE * file = fopen("out.txt", "ab+");
fwrite(&a, sizeof(uint32_t), 1, file);
我希望得到(小端)
1000 0000
,而是我的文件
0100 0000
运行此代码段的包装机,得到的是Ubuntu Linux操作系统的32位(小端)。 有没有人可以解释为什么它是这样的,文件内容是否与我的机器上的整数表示一致? 干杯。
感谢您的亲切解释。 – maximegir 2014-09-25 02:29:29