c++ - 不确定为什么我的函数一直返回相同的值

标签 c++ function

所以我做了一个程序,输入一个数字然后取反。例如。输入:987 应该返回 789,但目前它一直返回 32767。

我不确定为什么,我不想更改我的函数,但它怎么会一直返回错误的值。我的函数 reverseDigit() 中的代码有效,但是当我尝试将它用作函数时它不起作用。任何想法。

#include <iostream>


int reverseDigit(int number) {
int reverse = 0;

    for( ; number!= 0 ; )
    {
        reverse = reverse * 10;
        reverse = reverse + number%10;
        number = number/10;
    }   
}

using namespace std;
int main() {
    int numberInput;

    cout<<"Input a Number\n";
    cin>> numberInput;     // Taking Input Number in variable number
    cout << numberInput << " reversed is: " << reverseDigit(numberInput) << endl;

}

最佳答案

你没有从你的函数返回任何东西。

这应该会生成一个编译器警告。如果不是,您可能需要提高警告级别。

return reverse; 添加到它的末尾。

没有返回,任何人都可以猜测打印时会得到什么。

关于c++ - 不确定为什么我的函数一直返回相同的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39157885/

相关文章:

python - 单机和库?

c++ - 读取多个文件,并为每个文件保留一组数据。

c++ - "Operation not permitted"在 El Capitan 上运行使用/clang 编译的 hello world 二进制文件

c - 使用指针从另一个函数打印字符串

javascript - 变量范围或返回问题(不确定是哪一个)

python - 我似乎无法使用此功能将列表添加在一起

c++ - 无锁原子循环队列无法正常工作

c++ - 获取准确的窗口区域大小 - CreateWindow 窗口大小不是正确的窗口大小

c++ - 没有匹配函数调用 "constructor"

function - 外部OnTap/OnPressed传递数据(抖动)