c ++读取实际输入行

时间:2017-01-11 08:58:19

标签: c++ input

我正在尝试从输入中获取字符串行。例如“这很棒”。在所有情况下,我得到或“这”或“伟大”。 getline()方法没有按预期工作。代码尝试了:

string val;

while (true) {
    cout << message;
    getline(cin, val);
    if (val.length() <= length)
    {
        break;
    }
}

我的目标是获得所有句子。这可能吗?

1 个答案:

答案 0 :(得分:0)

添加cin.clear(); cin.sync();解决问题

string val;

while (true) {
    cin.clear();
    cin.sync();
    cout << message;
    getline(cin, val);
    if (val.length() <= length)
    {
        break;
    }
}