2015-05-13 55 views
1

我正在嘗試使用Xcode調試C++項目。我的程序通過標準輸入查找輸入像這樣:Xcode不會將參數傳遞給C++可執行文件

string line; 
getline(cin, line); 

我有一個輸入文件名爲input.txt,我通常傳遞到可執行文件,像這樣:

./verti < input.txt 

爲了完成同樣的事情在調試在Xcode中,我添加了一個參數,通過產品>方案>編輯方案...>運行>值爲< input.txt的參數啓動。文本文件與可執行文件位於相同的工作目錄中,但是當我構建/運行程序時,文本文件沒有被傳入。程序只是等待它應該接收的輸入。如果你們可以提供任何見解,那真的很有幫助。

我在OS X 10.10.1上運行Xcode 6.3.1。

+0

您可能錯過了使用'std :: ifstream'打開該文件並用該變量替換'cin'。 –

回答

4

<實際上被shell解釋(當使用終端和命令行時)。在Xcode的情況下不涉及shell,所以你不能管輸入到stdin

你必須在你的進程中打開文件(在argv[1]),並使用文件描述符而不是標準輸入。

+0

OP已經說過這樣做了。 –

+0

@πάνταῥεῖ我無法在問題中看到這一點。 OP顯然試圖使用<作爲參數(在Xcode環境中),這顯然不起作用。 –

+0

你是對的我誤讀了零件_「...運行」參數的值

相關問題