首页 > 解决方案 > C++如何在向量中输入某些东西

问题描述

我有一个空向量,需要用二进制数 1 和 0 填充,当用户输入 0 和 1 以外的内容时,向量的大小就完成了。我试过这样的事情:

#include "pch.h"
#include <iostream>
#include <vector>

using namespade std;

bool task1() {
vector<int> binV
int input = 0;

for (int i = 0; i < binV.size; i++) {
    cout << "Enter binary number: " << " ";
    if (input == 1 && input == 0) {
        cin >> input;
        binV.push_back(input);
    }
    else {
        cout << "Wrong input, the size of vector is complete";
    }
}
return 0;
}
int main() {
    task1();
}

我为输入做了简单的循环,并做了这个 if/else 语句,我认为这是不正确的,但没有找到解决我的任务的方法,我遇到了我不明白的代码问题 C2446 和 C3867,因为我不是 C++ 专家

标签: c++loopsif-statementvector

解决方案


使用 || 而不是 && 在你的 if 语句中。在你的 for 循环的比较中你的向量 (binV.size()) 的大小也是 0,所以你的循环不会运行。您可能想尝试使用 do while 循环。希望我能有所帮助!


推荐阅读