c语言

C语言func如何返回多个值

小樊
97
2024-06-20 02:02:25
栏目: 编程语言

在C语言中,函数一般只能返回一个值。但是可以通过传递指针或者使用结构体来返回多个值。

  1. 通过传递指针来返回多个值:
void func(int a, int b, int *sum, int *product) {
    *sum = a + b;
    *product = a * b;
}

int main() {
    int a = 5, b = 10;
    int sum, product;
    func(a, b, &sum, &product);
    printf("Sum: %d\nProduct: %d\n", sum, product);
    return 0;
}
  1. 使用结构体来返回多个值:
typedef struct {
    int sum;
    int product;
} Result;

Result func(int a, int b) {
    Result result;
    result.sum = a + b;
    result.product = a * b;
    return result;
}

int main() {
    int a = 5, b = 10;
    Result result = func(a, b);
    printf("Sum: %d\nProduct: %d\n", result.sum, result.product);
    return 0;
}

通过以上两种方法,可以实现在C语言中返回多个值的功能。

0
看了该问题的人还看了