为什么以下代码在使用 Visual C++ 的本地 Windows 机器上运行时会写入 4 个字节,而当我上传到学校的 Unix 服务器时会写入 4 个额外的 0 字节?
unsigned long temp = 1025;
ofstream file("test", ofstream::binary);
file.write((char*)&temp, sizeof(temp));
这是在本地使用 xxd 的结果:0104 0000
这是 Unix 服务器上的结果:0104 0000 0000 0000
这是我打开文件的模式的问题吗?