实现代码(参考):
#include <stdio.h>
struct Test
{
int a;
char c;
};
int main()
{
FILE *fp;
struct Test data[2]={{100,'b'},{101,'a'}};
struct Test data2[2];
fp=fopen("./file","w+");
int n_write=fwrite(&data,sizeof(struct Test)*2,1,fp);
fseek(fp,0,SEEK_SET);
int n_read=fread(&data2,sizeof(struct Test)*2,1,fp);
printf("%d, %c\n",data2[0].a,data2[0].c);
printf("%d, %c\n",data2[1].a,data2[1].c);
fclose(fp);
return 0;
}
运行效果:
CLC@Embed_Learn:~/lianxi3$ gcc demo1.c
CLC@Embed_Learn:~/lianxi3$ ./a.out
100, b
101, a