Цикл while не работает нормально при вставке целых чисел в вектор - PullRequest
0 голосов
/ 01 ноября 2019

При вставке элементов в вектор с помощью цикла while мой вектор пуст. Код не работает должным образом ...

    while(n--){
    int a;
    cin>>a;
    v.push_back(a);
}

Мой вектор пуст, когда я использую этот код для вставки элементов. Однако, если я использую для цикла, он работает нормально. Кто-нибудь может объяснить, почему он не работает?

1 Ответ

1 голос
/ 01 ноября 2019

Этот код зацикливается 5 раз для меня и дает правильный результат размера 5 для вектора.

#include <iostream>
#include <string>
#include <vector>

int main()
{
    int n = 5;
    std::vector<int> v;
    while(n--)
    {
       int a;
       std::cin>>a;
       v.push_back(a);
    }

    std::cout << v.size() <<std::endl;

}

Я могу только предположить, что есть проблема с вашим состоянием цикла.

...