返回值问题~!
如果我的一个被调用函数里需要返回2个值,那该怎样做啊?(我知道函数只能返回一个值~!)不过我采用全局变量,勉强能解决这个问题........但不知道还有没有更好的办法呢?~!
只有能一个返回值,如果需要在被调函数和主调函数之间有更多的交流,可以借助全局变量,指针完成。
用结构体解决问题呗。for example:
struct complex
{
double re; /*real part*/
double im; /*imag part*/
};
struct complex fun(............)
{
struct complex ans;
//........................
return ans;
}
[此贴子已经被作者于2006-6-24 10:56:16编辑过]
哦~!谢了~!完全明白~!
用结构体解决问题呗。for example:
struct complex
{
double re; /*real part*/
double im; /*imag part*/
};
struct complex fun(............)
{
struct complex ans;
//........................
return ans;
}
这主意不错!
两个return只能执行一个.
你试着模拟一下f(2)的过程.就知道1返回给谁了.
int f(3)
{
3!=1;
return 3*f(2);
}
int f(2)
{
2!=1;
return 2*f(1);
}
int f(1)
{
1==1;
return(1);
}
应该可以发现1是被f(1)接收了,f(1)被f(2)接收...