c++ 新手,函数后不返回值,calc.cpp
New to c++, not returning value after function, calc.cpp
我有一个基本问题,希望这里有人可以帮助我。我非常有信心这是一个小的、健忘的问题类型,缺少 return 或类似的东西。
///////////////////////////
//My Basic Calculator App
//Written by l8nit3tr0ubl3
//of NottaDev inc.
///////////////////////////
#include <iostream>
void in() //Take input from user, all 3 variables.
{
int add(int, int); //Forward declarations
int minus(int, int);
int divide(int, int);
int multiply(int, int);//end declarations
std::cout << "My Basic Calculator\n";//take inputs
std::cout << "Please input your first number.\n";
int firstNumber;
std::cin >> firstNumber;
std::cout << "Choose math function.\n";
std::cout << "Eg. *-+/\n";
char operatorType;
std::cin >> operatorType;
std::cout << "Please input second number.\n";
int secondNumber;
std::cin >> secondNumber;//end inputs
if (operatorType == '+') //determine math function to use
add(firstNumber, secondNumber);
else if (operatorType == '-')
minus(firstNumber, secondNumber);
else if (operatorType == '/')
divide(firstNumber, secondNumber);
else if (operatorType == '*')
multiply(firstNumber, secondNumber);//end math function
}
int add(int firstNumber, int secondNumber) //Actual math is done
{
return firstNumber + secondNumber;
}
int minus(int firstNumber, int secondNumber)
{
return firstNumber - secondNumber;
}
int divide(int firstNumber, int secondNumber)
{
return firstNumber / secondNumber;
}
int multiply(int firstNumber, int secondNumber)
{
return firstNumber * secondNumber; //End math
}
int main()
{
in(); //Call input, which will call math function
return 0; //return '0' for no error.
}
谁能告诉我我忘了打电话给什么或 return??
我应该更准确地回答我的问题,我很抱歉没有这样做。没有产生任何错误,我只是无法回应我对控制台的回答。但是下面提供了一个完美的答案
您的 add
、multiply
等函数 return 操作的结果,但您没有对其进行任何操作。
例如,您可以打印它:
std::cout << add(firstNumber, secondNumber) << std::endl;
可能您想输出计算结果。
所以写
std::cout << add(firstNumber, secondNumber);
但如果你只输出一次,那就更好了。为此使用一个临时变量,例如
result = add(firstNumber, secondNumber);
...
std::cout << "The result is " << result << std:endl;
您的加法、乘法和减法函数正在返回到 void in(),并且在它们返回时您没有分配给它们的变量。
我有一个基本问题,希望这里有人可以帮助我。我非常有信心这是一个小的、健忘的问题类型,缺少 return 或类似的东西。
///////////////////////////
//My Basic Calculator App
//Written by l8nit3tr0ubl3
//of NottaDev inc.
///////////////////////////
#include <iostream>
void in() //Take input from user, all 3 variables.
{
int add(int, int); //Forward declarations
int minus(int, int);
int divide(int, int);
int multiply(int, int);//end declarations
std::cout << "My Basic Calculator\n";//take inputs
std::cout << "Please input your first number.\n";
int firstNumber;
std::cin >> firstNumber;
std::cout << "Choose math function.\n";
std::cout << "Eg. *-+/\n";
char operatorType;
std::cin >> operatorType;
std::cout << "Please input second number.\n";
int secondNumber;
std::cin >> secondNumber;//end inputs
if (operatorType == '+') //determine math function to use
add(firstNumber, secondNumber);
else if (operatorType == '-')
minus(firstNumber, secondNumber);
else if (operatorType == '/')
divide(firstNumber, secondNumber);
else if (operatorType == '*')
multiply(firstNumber, secondNumber);//end math function
}
int add(int firstNumber, int secondNumber) //Actual math is done
{
return firstNumber + secondNumber;
}
int minus(int firstNumber, int secondNumber)
{
return firstNumber - secondNumber;
}
int divide(int firstNumber, int secondNumber)
{
return firstNumber / secondNumber;
}
int multiply(int firstNumber, int secondNumber)
{
return firstNumber * secondNumber; //End math
}
int main()
{
in(); //Call input, which will call math function
return 0; //return '0' for no error.
}
谁能告诉我我忘了打电话给什么或 return??
我应该更准确地回答我的问题,我很抱歉没有这样做。没有产生任何错误,我只是无法回应我对控制台的回答。但是下面提供了一个完美的答案
您的 add
、multiply
等函数 return 操作的结果,但您没有对其进行任何操作。
例如,您可以打印它:
std::cout << add(firstNumber, secondNumber) << std::endl;
可能您想输出计算结果。 所以写
std::cout << add(firstNumber, secondNumber);
但如果你只输出一次,那就更好了。为此使用一个临时变量,例如
result = add(firstNumber, secondNumber);
...
std::cout << "The result is " << result << std:endl;
您的加法、乘法和减法函数正在返回到 void in(),并且在它们返回时您没有分配给它们的变量。