C++ 如何在函数的一行中读取更多整数?

Laj*_*agy 5 c++ cin

我目前有一个函数可以读取一个整数,并检查错误(太大太小或不是整数。

int be_egesz(string question, int minval, int maxval, string error_message)
{
    bool error;
    string tmp;
    int number;
    do
    {
        cout << question << endl;
        cin >> szam;
        error=cin.fail() || cin.peek()!='\n' || (number<minval || number>maxval);
        if (error)
        {
            cout << error_message << endl;
        }
        cin.clear();
        getline(cin,tmp,'\n');
    }while(error);
    return number;
}
Run Code Online (Sandbox Code Playgroud)

我怎样才能转换这个函数,以便它可以在一行中读取超过 1 个整数?

输入示例:1 2

或者也许我怎样才能在一行中使用这个函数两次

GKE*_*GKE 3

std::cin读取两个变量怎么样?

#include <iostream> 
using std::cout;
using std::cin;

int main() {
    int x;
    int y;

    cin>>x>>y;

    cout<<"Value 1: "<<x<<"\n"<<"Value 2: "<<y<<"\n";
return 0;
}
Run Code Online (Sandbox Code Playgroud)

输入:

1 5
Run Code Online (Sandbox Code Playgroud)

输出:

Value 1: 1
Value 2: 5
Run Code Online (Sandbox Code Playgroud)

您还可以使用 2 个以上的整数值:

int x;
int y;
int z;

cin>>x>>y>>z;
Run Code Online (Sandbox Code Playgroud)

比较它们是否太大或太小就像任何其他情况一样:

cin>>x>>y;

if(x > 10)
    cout<<x<<" is Greater than 10\n";

if(y > 10)
    cout<<y<<" is Greater than 10\n";
Run Code Online (Sandbox Code Playgroud)