c语言如何返回多个数
C语言中一个函数怎样返回多个值
编写返回多个值的C语言函数,可以考虑采用结构体的方式去实现。如果返回的数个数值的数据类型不一致,可以通过定义全局变量实现有多个返回值的C语言函数,也可以考虑把要求返回的数个值定义成一个结构体,然后同样以传递结构体指针方式把结构体的指针传递给形参结构体指针,那么函数中对形参结构体的修改即是...
C语言如何让一个函数返回多个值
在C语言中,一般情况下函数的返回值是通过函数中的return语句来实现的,每调用一次return语句只能从函数中返回一个值,下面我们就来看看C语言怎么让一个函数返回多个值!1、全局变量传递 这种方式算是最不科学的规范,打破了软件开发需要的闭环策略,但在基本语法上是支持的,C语言里面最好少涉猎全局变量...
c语言如何定义一个函数可以返回多个值回去给主函数呀。
直接把shiwa、wa、qiao、bai、shi、ge这些变量定义为全局函数,这样在函数体里处理赋值了这些变量,在其他地方都可以使用,而不需要返回。 希望我的回答能帮助到你。 Cindere鞡 | 发布于2013-08-21 举报| 评论(2) 19 13 c子函数返回一个数这个是规定,没有办法改变也就是return只能返回一个数值但是这个可以迂...
c语言中调用函数如何返回多个值?
1、通过使用指针,在函数调用时,传递带有地址的参数,并使用指针更改其值;这样,修改后的值就会变成原始参数。2、通过使用指针返回结果为:3、通过使用结构:因为结构是用户定义的数据类型;可以定义一个包含两个整数变量的结构,并将更大和更小的值存储到这些变量中,然后使用该结构的值。4、通过使用...
C或C++中一个函数能不能返回多个值?
如果在C++语言中需要返回多个值可以有以下三种方法:1、返回一个数组的首地址,那么可以把整个数组的元素返回。例如:double* a;a=f();double* f(){ b=(double*)malloc(8*2);b[0]=1;b[1]=2;return b;} 但是多次调用还要考虑释放内存问题 2、传入指针 例如:double a[2];f(a)void f(...
c语言中调用函数如何返回多个值?
建立数组,返回指针。在要返回的两个值类型相同时,可以用创建数组的方式,将要返回的值存在数组中,并返回数组首地址,这样就可以实现返回两个值的效果。需要注意的是,要返回数组首地址,那么返回的值不可以是局部变量,有如下几种是可以的:a) 使用静态局部变量存储,并返回地址;b) 使用全局变量存储...
c语言return能不能有2个以上返回值
1 return只能返回一个变量,但该变量里是可以包含多个值的,即能满足"有2个以上返回值"的要求 2 方法 采用数组或结构体等复合数据类型来作为函数的返回值类型 3 示例 include<stdio.h>#include<malloc.h>\/\/方法1: 返回一个包含两个值的数组int* fun1(){int *result = (int*)malloc(2 * size...
C语言:如何定义一个函数!使它返回多个值
可以有很多方法,如:1):自定义一个结构体,把你想要返回的信息放在结构体里返回。2):通过指针参数返回。3):映射同一内存区域。。。很多
C语言中自定义函数返回值的个数
main()20. { 21. int a[]={1,2,3,4};22. int c; c = Pool(a,4);23.printf("Sum = %d\\nProduct = %d\\n",c[0],c[1]);24.getch();25.return 0;26. } 这样,我们就知道如何使用数组和指针从C函数中返回多个值。在很多情况下你会发现这个技巧很有用。
C语言 返回多个值
用全局变量。int a,b,c,d;void tabcd(){ a=20;b=15;c=10;d=5;} void print_abcd(){ ...}
弓长岭区唯地回答: 方法一:设置全局变量,这样你在形参中改变全局变量,在实参中也会有效.所以你可以在形参中改变多个全局变量的值,那么在实参中就相当于返回多个值.方法二:如果你用数组名作为形参,那么你改变数组内容,比如排序,或者进行加减运算,回到实参时依然是有效的.这样也会返回一组值.方法三:可以利用指针变量,这个原理和方法二是一样的,因为数组名本身就是数组首元素的地址.就不多说了.方法四:如果你学过C++,可以引用参数
伍芬13194004463问: C语言:如何定义一个函数!使它返回多个值 - ?
弓长岭区唯地回答: 可以有很多方法,如:1):自定义一个结构体,把你想要返回的信息放在结构体里返回.2):通过指针参数返回.3):映射同一内存区域..... 很多
伍芬13194004463问: C语言:一个函数只能返回一个值吗? 如果不是,怎样返回多值? - ?
弓长岭区唯地回答: 返回一个数组就可以了.如果想返回不同类型的值,先定义个结构体,把要返回的值存入结构体变量,再把这个结构体变量返回就行了.
伍芬13194004463问: c语言一个函数返回多个值 - ?
弓长岭区唯地回答: 函数最终只能返回一个值!!! 你可以用“数组或指针”; 如 #include<stdio.h> void ser(int *x,int *y) {*x=20;//把改变后的结果传给主函数*y=30; } void main() {int a,b;a=1,b=2;ser(&a,&b);printf("a:%d b:%d\n",a,b);}
伍芬13194004463问: C语言自定义函数返回多个值 - ?
弓长岭区唯地回答: // 因为程序错得太离谱了,无心帮你修改,给你个例子吧#include <stdio.h>// 计算二维数组的最大值,并记录其行列号.void main() { int m, r, c; int a[3][4] = {{12,23,34,5},{45,32,56,6},{9,16,34,21}}; int max(int ia[][4], int *r, int *c); m = max(a, &r, &c); ...
伍芬13194004463问: 编程中C语言函数想返回2个值该怎么办? - ?
弓长岭区唯地回答: 楼下真牛逼,恐怕是怪兽大学毕业的吧. 推荐做法 把函数声明写成这样int func(int* ret1,int* ret2) 这样就可以用ret1和ret2来返回信息了,事实上,scanf函数就是这样的一个例子. 方案二呢,可以将多个返回值打成一个结构体,然后作处理,其实这种方式不怎么好,因为结构里的两个变量很可能没什么联系,而你却把他们打包在一起.其实,等你学得好了,你会发现其实还有很多方法都可以达到目的,因为c语言就是如此强大而灵活.最后,警告一下不要用 return a,b之类的语句.因为a,b会被解释为一个逗号表达式,它最终的值就是b的值,所以return a,b;就等同于return b;
伍芬13194004463问: c语言如何使用return语句返回多个值,并作为另一个函数的参数? - ?
弓长岭区唯地回答: return只能返回简单数据类型数据如果想返回多个类型数据组成的一组数据,可以将它们组合成结构,返回指向存放这些数据的结构的指针,或者要返回的是一...
伍芬13194004463问: 如果在c语言函数中有多条return语句,程序如何执行?如果想返回多个值,该怎么办 - ?
弓长岭区唯地回答: 第一、如果一个函数中出现了多出return语句,那么函数会执行首先遇到的那个return语句(不一定是写在最前面的). 第二、关于你所说的返回多个值的问题,因为C语言也是采用的按值传参的方式,所以只能返回一个返回值.如果需要得到多个返回值,那么可以采用指针做为函数参数(具体做法参见那个经典的交换两个数的操作),另外,如果参数个数太多,还是建议用结构体…… 呃,其实C++里可以用按引用传参数的方式搞定,只是我对C不是很熟习,貌似C中不能那样搞. 我晓得4种参数传递方式(按值传递,按引用传递,传指针,复制恢复),你自己可以在网上找找具体的操作方法和各种方式间的区别,认真领略下…… 共同学习了.呵呵
伍芬13194004463问: C语言中自定义的函数可以一次返回多个值吗?就是用return一次返回多个值 - ?
弓长岭区唯地回答: 这个目前C语言还不支持.目前C语言的返回值只能是一种类型.如果想返回多个值的话,那楼主可以定义一个结构体类型,将结构体类型返回就可以了.实例代码如下:#include <stdio.h>#include <stdlib.h> struct return_test { int a; int b; }; struct ...
伍芬13194004463问: c语言中调用函数如何返回多个值? - ?
弓长岭区唯地回答: 可以有很多方法实现 你可以不使用数组,使用vector来做 std::vector convert(int a, int b) { std::vectorc; c.push_back(a+b); c.push_back(a-b); c.push_back(a*b); c.puch_back(0); } 或者你可以在外面定义一个数组,作为传入参数 void convert(int a, ...