21xrx.com
2025-04-25 11:50:40 Friday
文章检索 我的文章 写文章
C语言函数如何返回多个值的数据
2023-06-14 21:22:40 深夜i     15     0
C语言 函数 多返回值

在编程中,有时候需要一个函数返回多个值的数据,比如同时返回一个人的姓名和年龄等信息。而在C语言中,函数只能返回一个值。不过,我们可以利用指针或者结构体来实现函数返回多个值的数据。下面分别介绍两种方法:

方法一:利用指针

我们可以利用指针参数来传递多个值,然后在函数中修改指针指向的变量的值。例如:

void get_info(int *age, char *name){
  *age = 18;
  strcpy(name, "Tom");
}
int main(){
 int age;
 char name[20];
 get_info(&age, name);
 printf("Name: %s\n", name);
 printf("Age: %d\n", age);
 return 0;
}

方法二:利用结构体

我们可以利用结构体来封装多个值,然后返回一个结构体类型的数据。例如:

struct info{
 int age;
 char name[20];
};
struct info get_info(){
 struct info p;
 p.age = 18;
 strcpy(p.name, "Tom");
 return p;
}
int main(){
 struct info p = get_info();
 printf("Name: %s\n", p.name);
 printf("Age: %d\n", p.age);
 return 0;
}

综上所述,以上两种方法都可以实现函数返回多个值的数据。需要注意的是,利用指针传递参数时要注意指针是否为空,利用结构体传递参数时要注意结构体内的变量类型和名称。

  
  

评论区