需要使用文件操作函数fwrite和fread。
读物文件并写入结构体,同时保存文件的代码如下:
1、写
FILE* fp = fopen("card.dat", "wb");
for(int i = 0; i < counts; i++)
{
fwrite(&card[i], sizeof(struct card), 1, fp);
}
fclose(fp);
2、读
FILE* fp = fopen("card.dat", "rb");
int index = 0;
while(!feof(fp))
{
fread(&card[index++], sizeof(struct card), 1, fp);
if(index >= 1000)
break;
}
fclose(fp);
把接收结构体声明成与事先存入的结点结构体一致,用fscanf很方便地就读出来了……