为什么getline()忽略while循环中的字符串?

时间:2016-07-11 00:57:01

标签: c++ string getline

我写了以下代码:

#include <iostream>
#include <string>
#include <cstdio>

using namespace std;

int main() {

    int requirements, proposals;
    string inutil_string;

    while(scanf("%d %d", &requirements, &proposals), (requirements || proposals)) {
        cout << proposals << endl;
        for(int i = 0; i < requirements; i++) {
            getline(cin, inutil_string);
            cout << inutil_string << endl;
        }

    }
}

当我运行程序时,它不会通过getline()方法从控制台读取字符串,并且包含cout的行不会在“inutil_string”中显示任何内容。为什么我会获得这种行为?请注意,当键入“0 0”时,while循环必须停止。

0 个答案:

没有答案