21xrx.com
2024-09-17 03:44:34 Tuesday
登录
文章检索 我的文章 写文章
C语言如何返回多个参数
2023-06-15 19:01:32 深夜i     --     --
C语言 返回多个参数 结构体 指针

在C语言中,一般情况下,一个函数只能返回一个值。但在某些情况下,可能需要返回多个值,例如需要计算两个数的最大值和最小值。这时候就需要使用C语言的结构体或指针来返回多个值。

使用结构体返回多个参数

可以定义一个结构体,将需要返回的多个值存储在结构体的成员变量中,然后将结构体作为函数的返回值返回。以下是一个使用结构体返回两个数的最大值和最小值的示例代码:


#include

struct Result

  int max;

  int min;

;

struct Result findMaxAndMin(int x, int y) {

  struct Result result;

  if (x > y)

    result.max = x;

    result.min = y;

   else

    result.max = y;

    result.min = x;

  

  return result;

}

int main() {

  int a = 10, b = 20;

  struct Result result = findMaxAndMin(a, b);

  printf("Max: %d, Min: %d", result.max, result.min);

  return 0;

}

使用指针返回多个参数

另一种方法是通过指针来返回多个参数。将需要返回的多个值在函数内部赋值给指针所指向的变量,然后在函数外部通过指针获取这些值。以下是一个使用指针返回两个数的最大值和最小值的示例代码:


#include

void findMaxAndMin(int x, int y, int* max, int* min) {

  if (x > y) {

    *max = x;

    *min = y;

  } else {

    *max = y;

    *min = x;

  }

}

int main() {

  int a = 10, b = 20;

  int max, min;

  findMaxAndMin(a, b, &max, &min);

  printf("Max: %d, Min: %d", max, min);

  return 0;

}

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复