void save(){FILE *fp;int i;if((fp=fopen("user.txt","wb"))==NULL){printf("cannot open file\n");return;}for(i=0;i<MAX;i++)if(fwrite(&user[i],sizeof(struct diary_type),1,fp)!=1)printf("file write error\n");fclose(fp);}这是我写的save函数,作用是将stu的几个输入的数据保存在 stu_list的文件上.我想问下,怎么修改才能达到这样的效果: 保存的那个文件的文件名可以自己定义,比如我可以输入一些数字,保存在叫mark的文件里, 输入另外的则保存在其他文件里,文件名字可以自己定义,可以有形参!谢谢了错了,是保存在user.txt的文件上
3 回答
![?](http://img1.sycdn.imooc.com/533e50ed0001cc5b02000200-100-100.jpg)
慕尼黑的夜晚无繁华
TA贡献1864条经验 获得超6个赞
你就在user.txt那做手脚就行
你可以这样char a[10];
scanf(“%s“,a);if((fp=fopen(a,‘wb"))==NULL)
你想达到什么效果
我认为你说的就是 随意可存在自己输入的文件名下
![?](http://img1.sycdn.imooc.com/545869470001a00302200220-100-100.jpg)
斯蒂芬大帝
TA贡献1827条经验 获得超8个赞
可以撒,你只要定义个数组就可以了,如:
void save()
{
char name[10];
FILE *fp;
int i;
scanf("%s",name)
if((fp=fopen(name,"wb"))==NULL)
{printf("cannot open file\n");
return;}
for(i=0;i<MAX;i++)
if(fwrite(&user[i],sizeof(struct diary_type),1,fp)!=1)
printf("file write error\n");
fclose(fp);
}
添加回答
举报
0/150
提交
取消