📜  C函数参数和返回值(1)

📅  最后修改于: 2023-12-03 15:00:12.115000             🧑  作者: Mango

C函数参数和返回值

在C语言中,函数参数和返回值非常重要。一个函数的参数是指传递给函数的数据,而返回值则是函数执行后返回给调用者的结果。

函数参数
形参和实参

在C语言中,函数接收的参数可以分为形参和实参。形参是函数定义中声明的变量,它们用于接收实参的值。实参是调用函数时传递给函数的值。

下面是一个简单的函数定义示例:

int add(int a, int b) {
    return a + b;
}

函数add接收两个int类型的形参ab,并返回它们的和。在这个函数中,ab是形参。

下面是调用add函数的示例:

int result = add(2, 3);

在这个函数调用中,23是实参。当程序执行到add(2, 3)这行代码时,它会把23传递给add函数,2赋值给a3赋值给b。然后,函数执行return a + b,并将结果返回。

传递指针

另一种传递参数的方式是通过指针。指针可以让函数修改调用者传递的变量的值。

下面是一个简单的函数示例,它通过指针修改调用者传递的参数的值:

void swap(int* a, int* b) {
    int temp = *a;
    *a = *b;
    *b = temp;
}

函数swap接收两个int类型的指针形参ab,并交换它们所指向的变量的值。在这个函数中,ab是指针形参。

下面是调用swap函数的示例:

int x = 2;
int y = 3;

swap(&x, &y);

在这个函数调用中,&x&yint类型的指针实参。当程序执行到swap(&x, &y)这行代码时,它会把&x&y传递给swap函数,&x赋值给a&y赋值给b。然后,函数执行交换操作,将xy的值交换。

函数返回值

函数返回值是函数执行后返回给调用者的结果。返回值的类型可以是任何C语言支持的类型,如intfloatdoublecharstruct等。

下面是一个简单的函数示例:

int add(int a, int b) {
    return a + b;
}

函数add接收两个int类型的形参ab,并返回它们的和。在这个函数中,它使用return语句返回了一个int类型的值。

调用函数时,可以将返回值赋值给变量,如:

int result = add(2, 3);

在这个代码中,函数add返回2+3的结果,也就是5。调用者通过将返回值赋值给result变量获得了这个结果。

总结

函数参数和返回值是C语言中非常重要的概念。形参和实参用于在函数调用时传递数据,指针可以让函数修改调用者传递的变量的值。返回值是函数执行后返回给调用者的结果,可以是任何C语言支持的类型。正确使用参数和返回值可以让C程序更加灵活和强大。