C语言的子函数怎么返回两个值

Python022

C语言的子函数怎么返回两个值,第1张

函数是不能直接返回两个值的,不过可以通过数组,列表,链表等方式,返回多个值。

例如 int a[] f(),这个shu函数返回值就是一个整型的数组,如果你要返回两个值,可以定义数组长度为2,a[0]保存第一个值,a[1]保存第二个值。

int fun(int a, int b, int *c, int *d)

参数是a,b,返回值是c,d,c和d用指针传进去。

c,d可以是其他参数类型,也可以是数据结构。

函数返回值可以用于返回error。

扩展资料:

如果没有返回值类型名为"void", 整数类型int 类型返回值为整数类型int,以此类推……

类型名有:void int long float int* long* float* ……

C++中函数的调用:函数必须声明后才可以被调用。调用格式为:函数名(实参)

调用时函数名后的小括号中的实参必须和声明函数时的函数括号中的形参个数相同。

有返回值的函数可以进行计算,也可以做为右值进行赋值。

参考资料来源:百度百科-函数

方法一:设置全局变量,这样在形参中改变全局变量,在实参中也会有效。所以可以在形参中改变多个全局变量的值,那么在实参中就相当于返回多个值。

方法二:如果用数组名作为形参,那么改变数组内容,比如排序,或者进行加减运算,回到实参时依然是有效的。这样也会返回一组值。

方法三:可以利用指针变量,这个原理和方法二是一样的,因为数组名本身就是数组首元素的地址。就不多说了。用结构体封装不同类型数据,或者用数组表示同类型数据,然后返回结构体指针或者数组名,本质都是用指针来返回多个参数

方法四:如果学过C++,可以引用参数