scanf从文件中读入,printf写入到文件

时间:2023-03-09 20:28:15
scanf从文件中读入,printf写入到文件

重定向方式读写文件

#include <stdio.h>
#define LOCAL
int main()
{
#ifdef LOCAL
freopen("input.txt","r",stdin);
//使得scanf从文件input.txt读入
//r只读,如果文件不存在,出错
freopen("output.txt","w",stdout);
//使得printf写入文件output.txt
//w只写,如果文件不存在,建立新文件
#endif
//只有定义了符号LOCAL,才编译2条freopen语句。
int j;
scanf("%d",&j);
for(int i=0;i<5;i++)
printf("%d\n",i);
printf("%d\n",j);
return 0;
}

非重定向方式读写文件

int main()
{
FILE *fin,*fout;
fin=fopen("data.in.txt","r");
fout=fopen("data.out.txt","w");
int j;
fscanf(fin,"%d",&j);
for(int i=0;i<5;i++)
fprintf(fout,"%d\n",i);
fprintf(fout,"%d\n",j);
fclose(fin);
fclose(fout);
return 0;
}