2012-09-29 108 views
1

我完全困惑,爲什麼這不起作用。我想將輸入.txt文件的一行讀作一個長字符串,然後將其打印出來。在我看來,最常見的方式是以C字符串的形式讀取它,但是我的主程序(我發佈的代碼只是一個示例)會更簡單,如果我可以將它作爲普通C++字符串讀取。我究竟做錯了什麼?麻煩使用std :: getline C++函數

#include <iostream> 
    #include <fstream> 
    #include <string> 
    using namespace std; 

    int main(int argc, char *argv[]){ 
     ifstream inStream; 
      string line; 
     inStream.open(argv[1]); 
     getline(inStream, line, '\n'); 
     inStream.close(); 
     cout << line; 

     return 0; 
    } 

當我運行這個,它什麼都不輸出。 我確定我的.txt文件輸入正確並且有字符。

+4

你不知道打開是否成功。在您的調試風險中忽略錯誤。 –

+0

http://www.cplusplus.com/reference/string/getline/ – user1691539

+0

這就是我想使用的那個 – user1691539

回答

2

轉儲getcwd()以確保您打算在您認爲存在的位置打開文件。你可能不在自己認爲的地方。