2010-06-08 70 views
1

我有一个用C++编写的控制台应用程序。它只是从标准输入(键盘)读取一个整数,并将另一个整数写入标准输出(屏幕)。现在我想对该程序进行一些测试,并使用另一个程序检查其答案。换句话说,我想写这个程序的电子法官。我希望该程序(我想测试)从文件读取并写入文件而不更改源代码。我怎样才能做到这一点。在执行C++程序之前,我尝试将输入&输出分配给文件,但它没有奏效。如何更改另一程序的标准输入/输出?

assign(input,'temp.in'); 
reset(input); 
assign(output,'temp.out'); 
rewrite(output); 
exec('domino.exe'); 
close(input); 
close(output); 

回答

0

一个简单的解决方法是从你的shell中运行程序时,这样的重定向标准输入和输出:

./someProgram <inputFile.txt> outputFile.txt 

<超前输入文件和>先输出文件。

+0

问题是,我正在使用windows – 2010-06-08 19:58:19

+1

它也在'cmd'外壳中工作:http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/redirect。 mspx?mfr = true – 2010-06-08 20:10:14

+0

非常感谢。它对我非常有帮助。 – 2010-06-09 20:50:22

相关问题