c语言中return多个值
时间: 2023-09-03 08:15:24 浏览: 118
C语言 实现离散数学真值表
在 C 语言中,一个函数只能返回一个值。但是,可以使用指针或结构体等方式来实现返回多个值的效果。
1. 使用指针
可以通过将函数参数设置为指针类型,在函数内部修改指针所指向的内存地址的值,从而实现返回多个值的效果。例如:
```c
#include <stdio.h>
void get_values(int *a, int *b) {
*a = 10;
*b = 20;
}
int main() {
int x, y;
get_values(&x, &y);
printf("x = %d, y = %d", x, y);
return 0;
}
```
输出结果为:
```
x = 10, y = 20
```
2. 使用结构体
可以定义一个结构体来存储多个值,然后在函数中返回这个结构体。例如:
```c
#include <stdio.h>
typedef struct {
int a;
int b;
} Values;
Values get_values() {
Values v;
v.a = 10;
v.b = 20;
return v;
}
int main() {
Values values = get_values();
printf("a = %d, b = %d", values.a, values.b);
return 0;
}
```
输出结果为:
```
a = 10, b = 20
```
阅读全文