在C语言中,形参和实参的传递是通过函数调用来实现的。在调用函数时,需要提供实参(也称为实际参数),这些实参的值会被传递给函数的形参(也称为形式参数)。
一般来说,有以下两种方式来传递实参给形参:
示例代码:
#include <stdio.h>
void changeValue(int x) {
x = 10; // 修改形参的值
}
int main() {
int num = 5; // 实参的值
changeValue(num); // 传递实参给形参
printf("num = %d\n", num); // 输出实参的值,仍然为 5
return 0;
}
示例代码:
#include <stdio.h>
void changeValue(int *x) {
*x = 10; // 通过指针修改实参的值
}
int main() {
int num = 5; // 实参的值
changeValue(&num); // 传递实参的地址给形参
printf("num = %d\n", num); // 输出实参的值,被修改为 10
return 0;
}
需要注意的是,指针变量作为形参时,可以使用地址传递来修改实参的值。而对于其他非指针类型的变量,只能通过值传递来传递实参给形参。