使用std :: getline c ++函数时出现问题

时间:2012-09-29 19:22:05

标签: c++ file input cout getline

我完全不知道为什么这不起作用。我想在输入.txt文件的一行中读取一个长字符串然后打印它。在我看来,最常见的方式是将其作为C-String读取,但是如果我可以将其作为普通的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文件输入正确并且中包含字符。

1 个答案:

答案 0 :(得分:2)

getcwd()转储到cout,以确保您打算在您认为存在的位置打开文件。你有可能不在你认为自己的位置。