sizeof(struct XXX)的结果跟编译器是否有关?
如题。
如果有关的话,不同编译器之间进行文件读写操作会不会发生错误?
[解决办法]
嗯,字节对齐的方式与编译器有关。
可以在代码里使用
#pragma pack(push)
#pragma pack(4)
//TODO
#pragma pack(pop)
指定对齐方式
[解决办法]
sizeof确实与编译器有关,并且可以通过编译器扩展指令来修改。
但是对文件操作与这个关系不大,相同编译器相同的系统默认一般是一致的。如果怕不一致,完全可以使用编译器扩展来指定。