定义函数时,总会遇到有多个返回值需要返回的情况。比如计葡搌寸笆算某个特定数据,既要判断输入的有效性,以及数据处理过程中是炯善挠勿否有错误发生,还要返回计算结果。可是c语言中函数只能有一个返回值,那么如何返回多个值呢?
工具/原料
notepad++等编辑器
gcc编译器
方法/步骤
1、c语言函数只能最多有一个返回值。我们以一个数据运算函数作为实例讲解:
2、使用指针返回额外数据:定义指针参数,将结果通过指针返回。
3、如果有很多类型相同的数据,如何返回数组呢?c语言也只能借助指针返回数组。
4、使用结构体返回:如果返回多个数据,并且各个数据类型都不相同。那么只能通过结构体返回。
5、使用结构体指针返回:直接返回结构体,程序执行效率会受到影响。因为需要复制结构体数据,如果结构体数倌栗受绽据比较大,复制操作会损耗程序性能。通过使用结构体指针,我们也可以返回多个数据结果。
6、在c++中,除了使用指针,通常使用引用返回多个数据。与指针相比,使用引用时不用担心脑栲葱蛸函数调用者传入不符合预期的指针。