温馨提示×

c语言函数怎么返回多个值

小亿
267
2023-12-04 17:50:24
栏目: 编程语言

在C语言中,函数只能返回一个值。但可以使用指针或结构体的方式来实现返回多个值。

  1. 使用指针:可以将函数需要返回的多个值存储在参数中传入函数,并通过指针进行修改。
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;
}
  1. 使用结构体:可以定义一个结构体,结构体中包含需要返回的多个值,并将结构体作为返回值。
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;
}

0