遇到了这样的情况
有如下结构体
fread(&st, sizeof(ST_1), 1, file);
有如下结构体
struct ST_1
{
char a;
double b;
char c;
};
1. 写入文件
ST_1 st;
st.a = 'a';
st.b = 123.4;
st.c = 'b';
fwrite(&st, sizeof(ST_1), 1, file);
2. 从文件中读出来
ST_1 st;
fread(&st.a, sizeof(char), 1, file);
fread(&st.b, sizeof(double), 1, file);
fread(&st.c, sizeof(char), 1, file);
但是这样子读出来的结果是错误的. 而必须这样子读取
fread(&st, sizeof(ST_1), 1, file);