阅读量:2
在C语言中,函数只能返回一个值。但可以使用指针或结构体的方式来实现返回多个值。
- 使用指针:可以将函数需要返回的多个值存储在参数中传入函数,并通过指针进行修改。
void multipleValues(int a, int b, int *sum, int *diff) { *sum = a + b; *diff = a - b; } int main() { int a = 5, b = 3, sum, diff; multipleValues(a, b, &sum, &diff); printf("Sum: %d\n", sum); printf("Difference: %d\n", diff); return 0; }
- 使用结构体:可以定义一个结构体,结构体中包含需要返回的多个值,并将结构体作为返回值。
typedef struct { int sum; int diff; } Result; Result multipleValues(int a, int b) { Result result; result.sum = a + b; result.diff = a - b; return result; } int main() { int a = 5, b = 3; Result result = multipleValues(a, b); printf("Sum: %d\n", result.sum); printf("Difference: %d\n", result.diff); return 0; }