當我將一個結構體寫入文件時,內存如何在文件中設置?比如這個結構與功能:將結構體寫入文件
struct vector3D
{
public:
float x, y, z;
vector3D(float modelX, float modelY, float modelZ)
{
x = modelX;
y = modelY;
z = modelZ;
}
vector3D()
{
x = 0;
y = 0;
z = 0;
}
}
inline void writeVector3D(vector3D vec, FILE *f)
{
fwrite((void*)(&vec), sizeof(vector3D), 1, f);
}
而這種代碼主要:
vector3D vec(1, 2, 3);
writeVector3D(vec, file);
怎樣的信息文件中設置?它是否像123
? 或者struct有不同的設置?
這寫出二進制表示。執行二進制輸出的缺點是如何處理對數據結構的更改(與讀取/寫入文本(如XML或JSON)相比)。 – crashmstr