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变量,我编辑答案时候改的,我这个程序在写求阶乘的时候发现的问题!
recure2()这个函数里面,你是不是写错了变量result哦= =,怎么下面有个rezult。。而且我自己直接编译打印result和n的地址,是不一样的啊。。。