16

我希望从当前位置读取 C++ 中的 cin 直到将换行符转换为字符串。要读取的字符可能包含空格。我的第一次通过失败,因为它停在第一个空格:

string result;

cin >> result;

如果给出 cin:

(cd /my/dir; doSometing)\n

变量结果只得到:

(cd

我认为我应该能够使用流操纵器来完成此操作,但是 skipws 并不完全正确,因为它使用空格和制表符抛出回车,而且这听起来像是要跳过前导空格。

也许我需要像这样使用streambuf?

streambuf buf;

cin >> buf;
4

1 回答 1

22
std::string str; 
std::getline( std::cin, str);
于 2009-10-18T01:03:42.100 回答