C语言如何将标准流重定向到普通文件?

时间:2021-06-06 14:14:44
标准输入流为键盘,标准输出流为显示器。
在C语言中,如何重定向到普通的2个文件,in.txt和out.txt
请给出代码示例

7 个解决方案

#1


直接用fprintf就结了嘛,何必多折腾。
printf就是一个转调用fprintf的过程。

#2


fclose(stdin);fclose(stdout);然后打开文件;linux下是使用最小的文件描述符;所以就是stdin和stdout;
没有做过;个人理解;哈哈

#3


你查下 stdin,stdout

stdin是输入缓存的意思
FILE *fp;
fp = freopen("data.txt", "r", stdin);
fgets(buf, sizeof(buf), stdin); 

#4


关注中。。。。。。。。

#5


#include <stdio.h> 
int main() 

int a,b; 
freopen("debug\\in.txt","r",stdin); //输入重定向,输入数据将从in.txt文件中读取 
freopen("debug\\out.txt","w",stdout); //输出重定向,输出数据将保存在out.txt文件中 
while(scanf("%d %d",&a,&b)!=EOF) 
printf("%d\n",a+b); 
fclose(stdin);//关闭文件 
fclose(stdout);//关闭文件 
return 0; 

#6


命令行中 < 表示输入,> 表示输出

#7


mark

#1


直接用fprintf就结了嘛,何必多折腾。
printf就是一个转调用fprintf的过程。

#2


fclose(stdin);fclose(stdout);然后打开文件;linux下是使用最小的文件描述符;所以就是stdin和stdout;
没有做过;个人理解;哈哈

#3


你查下 stdin,stdout

stdin是输入缓存的意思
FILE *fp;
fp = freopen("data.txt", "r", stdin);
fgets(buf, sizeof(buf), stdin); 

#4


关注中。。。。。。。。

#5


#include <stdio.h> 
int main() 

int a,b; 
freopen("debug\\in.txt","r",stdin); //输入重定向,输入数据将从in.txt文件中读取 
freopen("debug\\out.txt","w",stdout); //输出重定向,输出数据将保存在out.txt文件中 
while(scanf("%d %d",&a,&b)!=EOF) 
printf("%d\n",a+b); 
fclose(stdin);//关闭文件 
fclose(stdout);//关闭文件 
return 0; 

#6


命令行中 < 表示输入,> 表示输出

#7


mark