1 何谓输入输出重定向?
默认情况下输入是由键盘输入的。输出是默认的输出到屏幕上。而输入输出重定向就是改变默认的输入输出方向。。呵呵。
2 freopen()函数
函数名:freopen
声明:FILE *freopen( const char *path, const char *mode, FILE *stream );
所在文件: stdio.h
参数说明:
path: 文件名,用于存储输入输出的自定义文件名。
mode: 文件打开的模式。和fopen中的模式(如r-只读, w-写)相同。
stream: 一个文件,通常使用标准流文件。
返回值:成功,则返回一个path所指定文件的指针;失败,返回NULL。(一般可以不使用它的返回值)
与该函数相对应的函数是
下面我们就用这两个函数来实现一下输入输出重定向
int fclose ( FILE * stream );
返回值表示:若stream被成功关闭将返回一个0值,否则返回EOF.
Code:
#include <iostream>
#include <string>
using namespace std;
int main()
{
freopen("out.txt","w",stdout);
string str;
while (cin >> str)
cout << str << endl;
fclose(stdout);
return 0;
}
这个程序实现了输出重定向,即:输出不再是默认的屏幕了,而是输出到了out.txt这个文件中。同样,用此种方法我们也可以实现输入重定向。
转载于:https://blog.51cto.com/liu168ad/1336041