成都网站建设设计

将想法与焦点和您一起共享

c语言中函数返回两个值 c语言中函数返回两个值是什么

C语言函数返回2个值

首先比喻下函数是什么吧?

网站建设哪家好,找创新互联!专注于网页设计、网站建设、微信开发、微信小程序开发、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了甘德免费建站欢迎大家使用!

函数简单的说就是一个黑箱子似的制造机器,你给他原料(输入参数)它给你制造出产品(函数返回的结果)。

所以函数的返回值一般就是你想要的结果。当然有些函数没有返回值,比如输出一句话的函数,这函数就没有返回值。c++用void型表示。但是求两个数的最大值函数int

max(int

a,

int

b)的返回值就可以是你求的最大的值。

int

max(int

a,

intb)

{

if(ab)

{

return

a;

}

else

{

return

b;

}

}

其中return返回的值就是函数的返回值。

c语言中在一个自定义函数中怎么返回两个值?

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

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

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

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

编程中C语言函数想返回2个值该怎么办?

楼下真牛逼,恐怕是怪兽大学毕业的吧。

推荐做法

把函数声明写成这样int func(int* ret1,int* ret2)

这样就可以用ret1和ret2来返回信息了,事实上,scanf函数就是这样的一个例子。

方案二呢,可以将多个返回值打成一个结构体,然后作处理,其实这种方式不怎么好,因为结构里的两个变量很可能没什么联系,而你却把他们打包在一起。其实,等你学得好了,你会发现其实还有很多方法都可以达到目的,因为c语言就是如此强大而灵活。最后,警告一下不要用 return a,b之类的语句。因为a,b会被解释为一个逗号表达式,它最终的值就是b的值,所以return a,b;就等同于return b;


本文标题:c语言中函数返回两个值 c语言中函数返回两个值是什么
浏览地址:http://chengdu.cdxwcx.cn/article/ddjphdj.html