2010-06-08 68 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

相關問題