c++ - 函数定义里的未初始化的变量==调用该函数实参值?
大家讲道理
大家讲道理 2017-04-17 13:56:19
[C++讨论组]

1.函数定义里的未初始化的变量==调用该函数实参值?

#include <iostream>

    using namespace std;
    int recure2(int n);
    int main()
    {
        int num;
        cin>>num;
        cout<<recure2(num)<<endl;
        cout << "Hello World!" << endl;
        return 0;
    }

    int recure2(int n){
        int result;
        cout<<hex<<&result;
        if (n!=1) {
            recure2(n-1);
        }
        if(n==1){
            result=0;
        }
        result*=n;
        cout<<result<<endl;
        return result;
    }
函数定义里的result值,与实参传给形参的n值一样,很奇怪??
我调试中断放在int result;获得的result和n的值和地址!下图

![n变量与result变量值一样][1]


图片的rezult就是程序中result变量,我编辑答案时候改的,我这个程序在写求阶乘的时候发现的问题!

大家讲道理
大家讲道理

光阴似箭催人老,日月如移越少年。

全部回复(1)
天蓬老师

recure2()这个函数里面,你是不是写错了变量result哦= =,怎么下面有个rezult。。而且我自己直接编译打印result和n的地址,是不一样的啊。。。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号