在C语言中,如果一个函数返回两个数,return 语句中要怎么表示?是用数组吗

2024年11月16日 17:46
有3个网友回答
网友(1):

你是想返回两个值?
这是不行的,一般是通过指针达到这个效果,但函数只能返回一个值(理论上)。
如果想返回多个值的话,可以用指针或者数组来做为函数的参数.
才能返回多个值的.
如果想返回多个值,对指针或数组不熟悉的可以用全局变量,在函数中用你定义的全局变量,则能改变全局变量的值.再在主程序中用改变后的全局变量就可以达到这个目的.
简单点说,就是用指针,和全局变量,其它的就麻烦了。

网友(2):

函数直接用void,参数加上2个指针,用指针当返回后的值
void function(double x,double y,double * x1,double * y1)
{
*x1=第一个返回的值;
*y1=第二个返回的值;
}

在外面调用方法后,再用其他数来接X1,Y1就行了 ,或者直接就用X1,Y1就行

网友(3):

定义成结构体
struct retval
{
double ret1;
double ret2;
};

返回值类型就写成 struct retval
返回之前给结构成员赋值

还有种方法,通过参数返回