1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > C语言基础知识:C语言函数调用怎么返回两个值

C语言基础知识:C语言函数调用怎么返回两个值

时间:2021-02-25 23:49:25

相关推荐

C语言基础知识:C语言函数调用怎么返回两个值

在C语言中,函数只能返回一个值,要返回两个值,可以改换思路,通过其它方式做到。

1 建立数组,返回数组首地址(指针)。

在要返回的两个值类型相同时,可以用创建数组的方式,将要返回的值存在数组中,并返回数组首地址,这样就可以实现返回两个值的效果。

需要注意的是,要返回数组首地址,那么返回的值不可以是局部变量,有如下几种是可以的:

a) 使用静态局部变量存储,并返回地址;

b) 使用全局变量存储,返回地址;

c) 函数中动态分配内存,并返回申请到的地址,此种方法需要注意,在使用后需要释放;

d) 在参数中传入数组地址,并返回。即返回的实际上是主调函数中的变量地址。

2 建立结构体,返回结构体指针/结构体变量。

将需要返回的值,写成结构体形式,并返回结构体变量或返回结构体指针,这样可以实现一个返回值中含有多组数据。

3 当数据规模较小时,可以采用将小规模数据合并为大规模数据的方式,进行返回。

比如,需要返回两个char型数据时,可以通过返回一个short数据,高地位分别存储各自的值。

4 输出型参数返回

还可以不使用返回值的方式,而是通过函数参数传值,如使用输出型参数,举个例子:对于strcpy函数原型:

char *strcpy(char *strDest,const char *strSrc)

解析:strDest为输出型参数。

输出型参数与输入形参数解析:一般不带const的是输出型参数,使用const修饰的是输入形参数,如strSrc

5 使用全局变量

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。