2017-05-08 111 views
0

我有一個C++程序,應該從文本文件讀取輸入,並將輸出寫入文本文件。我想嘗試不添加任何額外的代碼實現這一點,所以在命令行中我寫寫輸出到文本文件沒有顯示輸入

project.exe<input.txt>output.txt 

這工作,但在ouput.txt文件,我看不到任何輸入。它只是說,是這樣的:

Enter option: 
option output 

我可以只添加std::cout<<option;每個輸入後,但有一種方式來展現輸入無需添加任何額外的代碼?

+2

實際的代碼在哪裏? – didiz

+1

我不認爲這很重要,因爲我全部通過命令提示符 –

+0

我認爲這是我在命令提示符下調用它的問題,而不是C++本身 –

回答

1

您試圖找到一種方法來製作Windows shell複製或克隆您的輸入流,以便在程序使用它之後,它也會發送到輸出流。存在一些問題:

  1. 它被您的程序佔用!
  2. 你的程序的輸出流

我不是說這是不可能的(在Linux上,一些藥汁與tee可能)的控制權,但如果可能的話那麼它將會是哈克肯定非常規。

坦率地說,我會堅持自己的想法,只是在程序本身內鏡像輸出流的輸入。如果有人用交互方式使用你的程序,那麼這對他們來說看起來很奇怪,但是你可以提供一個命令行開關來切換這個功能。例如,它類似於PuTTY的可選「本地回聲」功能。

+0

謝謝,我不確定它是否容易實現。我剛剛通過命令提示符被引入到I/O中,所以我不知道它是什麼/沒有能力。 –

+0

探索http://stackoverflow.com/a/7940993/560648如果你想引起自己的痛苦:) –

+0

對所有downvotes感到抱歉;很多人顯然不理解你的問題,雖然我認爲它很清楚。 –