只有一个变量正在打印C++
//libraries
#include <iostream>
//standard namepace
using namespace std;
int Car() {
int a;
int b;
cout << "Fuel Tank" << endl;
cin >> a;
cout << "MPG" << endl;
cin >> b;
return a, b;
}
int main() {
int a;
int b;
a,b = Car();
cout << "Print Values " << (a,b); // <--- Line 25
return 0;
}
假设您将 10 和 15 作为第一个和第二个输入。为什么 15 是cout第 25 行语句中唯一要打印的变量。
回答
这不是 C++ 的工作方式。
你需要:
std:: pair<int, int> Car() {
...
return {a, b};
}
auto [a, b] = Car();
std::cout << a << ", " << b;
你有什么:
int Car()
Car是一个返回 1 的函数int。
return a, b;
这里有逗号运算符,它计算每个参数并丢弃除最后一个参数之外的所有参数。所以它返回b。
a, b = Car();
(a, b)
再次是逗号运算符。a被丢弃并被b分配。然后a被丢弃并b打印。