所谓重定向输出,就是可以把原本只是输出在控制台的字符,输出到你指定的路径文件中。输入也类似,就是从指定的文件中读取,而不是读取在控制台中的输入。重定向函数可以在任何时候开启、关闭。
- 函数名:freopen
- 所在文件:[HTML_REMOVED]
- 标准声明:FILE freopen( const char path, const char mode, FILE stream );
-
参数说明:
path:文件名,用于存储输入输出的自定义文件名。(需用”“引起来)
mode:文件打开的模式, r-只读,w-只写。(需用”“引起来)
stream:一个文件,通常使用标准流文件。标准流文件具体是指stdin、stdout、stderr。其中stdin是标准输入流,默认为键盘;stdout是标准输出流,默认为是屏幕;stderr是标准错误流,一般把屏幕设为默认(不需要用”“!!!一定注意) -
实例运行:
编写程序,每读人3个整数,就将它们从大到小排序输出。读到连续的3个0,则程序结束。
#include<iostream>
using namespace std;
int main()
{
freopen("test.txt","r",stdin);
freopen("tet.txt","w",stdout);
int a,b,c,d;
while(true)
{
cin>>a>>b>>c;
if(a==0||b==0||c==0)
break;
if(a<b)
{
d=a;a=b;b=d;
}
if(b<c)
{
d=b;b=c;c=d;
}
if(a<b)
{
d=a;a=b;b=d;
}
cout<<a<<" "<<b<<" "<<c<<endl;
}
fclose(stdin);
fclose(stdout);
return 0;
}
**注:如果直接输出到屏幕,只需将第22行代码去掉即可**