C++程序问题,帮忙啊,很烦很头痛啊555

来源:百度知道 编辑:UC知道 时间:2024/06/17 00:30:47
#include<iostream.h>
int&fun(int);
void main()
{
int x(5),y(8);
int s1=fun(x);
int s2=fun(y);
cout<<s1<<','<<s2<<endl;
}
int&fun(int a)
{
static int t;
t=2*a;
return t;
}
运行后
10,16
帮我分析下运算过程啊,谢谢啊,我头痛

void main()
{
int x(5),y(8); //赋值,x=5;y=8
int s1=fun(x); //调用fun函数,参数为5,传进去以后,请看下面的函数代码,a为形参,x为实参,a=x=5,t=2×5=10;

int s2=fun(y); //调用fun函数,参数为8,传进去以后,请看下面的函数代码,a为形参,y为实参,a=y=8,t=2×8=16;

cout<<s1<<','<<s2<<endl; //输出结果,10,16;
}
int&fun(int a)
{
static int t;
t=2*a;
return t;
}

明白否?~~

这个不是更简单啊,都是值传递啊!刚刚那个懂了,这个还不懂啊!