我在C++程序中声明变量时遇到问题

I have a problem declaring my variables in my program in C++

本文关键字:遇到 问题 变量 声明 C++ 程序 我在      更新时间:2023-10-16

我正在编写一个程序,它要求三个数字,然后说哪个是主数字,次要数字和中间数字。当我执行程序时,主要,次要和中间的空间中没有任何内容出现。我不知道我是否在声明我的变量或其他东西时犯了错误。

这是代码的一小部分。我没有发布完整的,因为它是相同的,但具有其他可能性。

#include <iostream>
using namespace std;
int N1, N2, N3;
int main()
{
cout << "First Number: ";
cin >> N1;
cout << "nSecong Number: ";
cin >> N2;
cout << "nThird Number: ";
cin >> N3;
if (N1 > N2 && N2 > N3) {
cout << "n Major: ", N1;
cout << "n Middle: ", N2;
cout << "n Minorn: ", N3;
}
else if (N1 > N3 && N3 > N2) {
cout << "nMajor: ", N1;
cout << "nMiddle: ", N3;
cout << "nMinorn: ", N2;
}
// additional cases omitted
}

行:

cout << "n Major: ", N1;

由于运算符优先级C++解析为:

(cout << "n Major: "), N1;

逗号运算符计算其左侧,丢弃结果,然后计算右侧,生成表达式的结果,此处N1。 但是没有对这个价值做任何事情。

您希望使用<<而不是,来打印这两个值:

cout << "n Major: " << N1;

这将解析为:

(cout << "n Major: ") << N1;

内部表达式打印其参数并生成流 (cout( 作为结果。 然后,外部表达式执行相同的操作。 因此,<<运算符可以像这样无限期地链接:

cout << value1 << value2 << value3 << ... << valueN;