c++新特性,函数后不返回值,calc.cpp

New to c++, not returning value after function, calc.cpp

本文关键字:返回值 calc cpp 新特性 函数 c++      更新时间:2023-10-16

我有一个基本的问题,希望有人在这里可以帮助我。我很确定这是一个小的,健忘的类型的问题,缺少回报或类似的东西。

///////////////////////////
//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 Calculatorn";//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.
}
谁能告诉我我忘记打电话或回电话了吗?

我应该更准确地回答我的问题,我为没有这样做而道歉。没有错误产生,我只是无法将我的答案回显到控制台。然而,下面有一个完美的答案

您的add, multiply等函数返回操作的结果,但您没有对其进行任何操作。

你可以打印出来:

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,并且当它们返回时您没有分配给它们的变量。