使用>而不是stdout

时间:2012-06-06 15:03:29

标签: c++

因此,对于我的程序,我需要获取cmd.exe中显示的所有信息并将它们放在一个文件中。 所以为此,我使用了以下代码

freopen ("text.txt","w",stdout);

我不得不把它放在main.cpp

但是有人告诉我,我应该在不同的课程中这样做,并且我可以直接使用>符号。

你们能告诉我怎么做吗?

如果你能给我一个很棒的例子。

2 个答案:

答案 0 :(得分:3)

我觉得你被告知管道。在shell中,您可以输入类似:

的内容
somecommand > text.txt

它会将somecommand的输出写入text.txt

答案 1 :(得分:3)

std::cout << "Output sentence"; // prints Output sentence on screen
std::cout << 120;               // prints number 120 on screen
std::cout << x;                 // prints the content of x on screen 

如果你使用那些,那么用户可以使用下面的语法将输出(通常会转到控制台)重定向到文件。

yourapplication.exe > "output.txt"

如果你使用std :: cin和&lt;&lt;然后,您还可以< "input.txt"从input.txt输入文本,就像用户输入文本一样。

http://www.cplusplus.com/doc/tutorial/basic_io/很好地解释了输入和输出流。

http://technet.microsoft.com/en-us/library/bb490982.aspx解释了控制台重定向。