c语言,要保存多种结构体数据到相应的文件中,用一个函数实现,我写的报错了,如何解决?

2025-01-02 23:58:26
推荐回答(2个)
回答(1):

可以传两个head进来吧,像struct1 *head1,struct2 *head2然后分别处理,然后在函数里面如果head1、head2为空则往文件中写。你可以试试。

回答(2):

int save_msg(void *head,void *temp,char *filename){//这里的head要换成,head所在的结构或者联合。。
FILE *fp = fopen(filename,"wb");
if(NULL == fp)
return 1;
temp = head->next;
while(temp != NULL){
if(fwrite(temp,1,sizeof(temp),fp)==0){
fclose(fp);
return 2;
}
temp = temp->next;
}
fclose(fp);
return 0;
}