矢量不输出正确的值

时间:2015-04-02 04:46:36

标签: c++ vector

编程新手,所以我很难让这段代码正确输出:

int main()
{
    cout << "Please enter a sequence integers:" << '\n';
    cout << "Enter the character | to quit." << '\n';

    char quitting;
    cin >> quitting;
    if (quitting == '|')
    {
        cout << "Press any key to confirm exit.";
        return 2;
    }

    vector<int> numbers;

    for (int being_read; cin >> being_read;)
    {
        numbers.push_back(being_read);
        cout << numbers[numbers.size()-1] << '\n';
    }
}

第一个元素永远不会正确输出。如果读取的第一个值是单个数字,它将忽略它并从第二个元素开始计数(1,2,3,4将输出2,3,4)。如果它超过一个数字,它将输出所有元素,但第一个元素将以我无法理解的方式截断。 111,222,333将输出11,222,333,444,而105,106,107将输出5,106,107。

1 个答案:

答案 0 :(得分:1)

第一个数字在于戒烟。如果删除它,代码运行正常