/*将n=0写入文件,然后读出给m,m自加,再将m=1写入文件,(要求覆盖文件中的n=0),也就是把文件中已经保存的0改为1,这个应该怎么实现*/#include<stdio.h>#include<stdlib.h>FILE *fp;int main(){ int n,m,i; n=0; if((fp=fopen("text2.txt","wt+"))==NULL) { printf("error"); exit(1); } fwrite(&n,sizeof(int),1,fp); fclose(fp); if((fp=fopen("text2.txt","rt"))==NULL) { printf("error"); exit(1); } rewind(fp); fread(&m,sizeof(int),1,fp); m++; fclose(fp); printf("%d\n",m); if((fp=fopen("text2.txt","at"))==NULL) { printf("error"); exit(1); } rewind(fp); fwrite(&m,sizeof(int),1,fp); fclose(fp); if((fp=fopen("text2.txt","rt"))==NULL) { printf("error"); exit(1); } rewind(fp); fread(&i,sizeof(int),1,fp); fclose(fp); printf("%d",i); return 0;}
1 回答
慕少1414285
TA贡献4条经验 获得超0个赞
一般先打开两个文件(原文件与替换文件);然后把原文件的东西写进去,到替换的那里把替换的写进替换文件;最后删掉原文件并用替换文件替换原文件remove()、rename()这两个函数就是删除与替换的
- 1 回答
- 0 关注
- 2992 浏览
添加回答
举报
0/150
提交
取消