函数实现返回多个值
对于C语言来说,通常函数只能返回一个值,但是这并不意味着不能实现返回多个值。
有以下几个方法可实现:
-
使用指针参数是最常见的方法,它简单直接; -
使用结构体则提供了更好的代码组织和类型安全; -
全局变量虽然可行但通常不推荐; -
而数组则适用于返回同类型的多个值。
使用指针参数传递多个返回值是最常见的方式。下面举例:
void func(int x, int y, int *sum, int *product)
{
*sum = x+y;
*product = x*y;
}
int main(void)
{
int a=5,b=1;
int sum , product;
func(a,b,&sum,&product);
printf("sum result is %d",sum); //输出6
printf("prduct result is %d",product); //输出5
return 0;
}
浙公网安备 33010602011771号