新手求教,while循环有关问题

新手求教,while循环问题
代码如下:
C/C++ code

int main()
{
    int ival1;
    vector<int> ivec1;

    cout << "请为第一个vector对象输入整数元素:" << endl;

    while(cin >> ival1)
        ivec1.push_back(ival1);
    

    int ival2;
    vector<int> ivec2;

    cout << "请为第二个vector对象输入整数元素:" << endl;

    while(cin >> ival2)        //直接跳过,没有执行循环
        ivec2.push_back(ival2);

    return 0;
}





为什么第二个循环没有执行?  
我还在念书,条件有限,不能经常上网,但我会及时过来结帖的,希望各位帮帮我。(我很笨,各位不要鄙视我啊)

------解决方案--------------------
C/C++ code

int main()
{
    int ival1;
    vector<int> ivec1;

    cout << "请为第一个vector对象输入整数元素:" << endl;

    while(cin >> ival1)  //你结束这个循环的时候流肯定是属于出错状态了。
        ivec1.push_back(ival1);
    //所以你可以在这里添加cin.clear();恢复流到正常状态。后面就可以读取了

    int ival2;
    vector<int> ivec2;

    cout << "请为第二个vector对象输入整数元素:" << endl;

    while(cin >> ival2)        //直接跳过,没有执行循环
        ivec2.push_back(ival2);

    return 0;
}