为什么它只收到 1 个整数?

Why does it receive only 1 integer?

为什么这个只接收一个整数?
这是代码:

#include <iostream>

int main () {
    int num1,num2,num3;
    std::cin>>num1,num2,num3;

    return 0;
}

根据Operator Precedence, comma operator的优先级低于operator>>,所以std::cin>>num1,num2,num3;等同于(std::cin>>num1), num2, num3;;以下 num2, num3 实际上什么都不做。 (更确切地说,先计算 std::cin>>num1 并丢弃其结果;然后计算 num2,最后计算 num3,其值是整个逗号表达式的结果。)

你想要的应该是std::cin >> num1 >> num2 >> num3;.

这不是正确的语法。这是逗号运算符的应用。你想要

std::cin >> num1 >> num2 >> num3;