标题: C语言一个函数 返回值可以返回 两个吗? [打印本页]

作者: 李冬    时间: 2022-2-24 13:18
标题: C语言一个函数 返回值可以返回 两个吗?
如题

作者: heicad    时间: 2022-2-24 16:49
不可以,,但是你可以返回数组 然后分解即可
如果想返回多个数组 可以返回一个指向指针的指针
作者: rundstedt    时间: 2022-2-24 17:00
只能定义一个结构体,然后返回这个结构体指针了。
作者: xws245925587    时间: 2022-2-24 17:57
1、返回结构体;
2、返回指针(与结构体同一思想);
3、通过函数参数返回
作者: 21heih    时间: 2022-2-24 19:11
通过指针或结构体,定义参数,起到返回多个参数值的效果
作者: rundstedt    时间: 2022-2-24 19:26
还有一个办法就是学scanf(),参数是指针,可以返回多个值,改变指针指向的地址内容就行了。
作者: wfqxgw    时间: 2022-2-24 19:51
返回多参数的话。一般是用指针。
作者: glinfei    时间: 2022-2-24 20:10
要分场合,给计算机写程序,自然用指针数组之类解决多回参数问题;在单片机,要看大小,把几个参数,合并成一个字节或一个字等返回。
作者: rayin    时间: 2022-2-24 21:00
可以返回2个数值, touch panel 的处理函数就是需要返回x,y坐标. 用指针处理就可以返回2个数值了.
作者: frank_tw    时间: 2022-2-24 21:34
Example:
typedef struct
{
        int a;
        int b;
}Return_TypeDef;


Return_TypeDef Func()
{
        Return_TypeDef ret_value;
        ret_value.a=10;
        ret_value.b=5;
        return ret_value;
}


int main()
{
        Return_TypeDef  ret=Func();
        //you can get retturn value [ret.a =10; and ret.b=5 ]

}
作者: liiuyang1027    时间: 2022-2-24 21:58
“在C语言中,函数只能返回一个值,要返回两个值,可以改换思路,通过其它方式做到。 1 建立数组,返回指针。 在要返回的两个值类型相同时,可以用创建数组的方式,将要返回的值存在数组中,并返回数组首地址,这样就可以实现返回两个值的效果。 需要注意的是,要返回数组首地址,那么返回的值不可以是...
作者: ansonjimli    时间: 2022-2-25 21:52
如果有返回值的话,通过返回结构体指针方式。如果无返回值,通过传入参数返回,可以是数组的指针,或者多个单独变量的指针形式。
作者: 郑汉松    时间: 2022-2-26 09:07
可以返回一个结构体,结构体里面包含多个数据
作者: 2316185885    时间: 2022-2-26 10:56
不可以
作者: frank_tw    时间: 2022-2-26 13:43
可以
Example:
typedef struct
{
        int a;
        int b;
        int c;
.....

}Return_TypeDef;
作者: 风的气息    时间: 2022-2-26 14:03
可以的,定义一个结构体,把你想要的数据存在结构体里,函数返回该结构体即可
作者: 863988175    时间: 2022-3-8 09:51
不可以
作者: xhaity    时间: 2022-3-8 12:22
准确的说只能返回一个参数,参数类型就是函数类型。需要返回两个,可以用指针,结构体等函数类型
作者: 2936566371    时间: 2022-3-8 12:28
就我看不见题?
作者: wufa1986    时间: 2022-3-8 13:22
返回指针,指向数组
作者: KlineLai    时间: 2022-3-9 19:48
不可以,可以定义数组、结构体等,返回一个集合形式,然后再根据需要进行取值




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1