我试着列出3个选项。如果我键入“1”,选项1应该被打印出来。但我不知道如何打印结果。
我目前的尝试是:
#include <iostream>
using namespace std;
int Menu(int a)
{
cout << "Choose an option: " << endl;
cout << "1.Option 1" << endl;
cout << "2.Option 2" << endl;
cout << "3.Option 3" << endl;
cin >> a;
return a;
}
char printResult()
{
char op;
if (op == '1')
cout << "OPTION 1";
if (op == '2')
cout << "OPTION 2";
if (op == '3')
cout << "OPTION 3";
}
int main()
{
char op;
int a;
Menu(a);
printResult();
}
2条答案
按热度按时间brjng4g31#
你需要将值从int的位置传递到处理/输出的位置:
注意,像
void printResult(char op) { ...
这样的函数参数与像void printResult() { char op; ...
这样的局部变量不同。前者消耗一个需要由函数调用者传递的值,例如printResult('1')
或printResult(someVariable)
。后者不接受任何参数,但使用“局部”变量,该变量仅在函数体范围内可见和有效-因此无法通过这种方式将值从外部传输到内部,反之亦然。ogsagwnx2#
Menu有返回值和参数,但实际上只需要返回值。
printResult不需要返回任何东西,但需要知道值是什么,因此将其传入
然后main可以稍微简化一下。
我添加了“返回0;因为main被声明为返回一个int,你会得到一个警告。