C语言形参和实参怎么传递

avatar
作者
猴君
阅读量:3

在C语言中,形参和实参的传递是通过函数调用来实现的。在调用函数时,需要提供实参(也称为实际参数),这些实参的值会被传递给函数的形参(也称为形式参数)。

一般来说,有以下两种方式来传递实参给形参:

  1. 值传递:将实参的值复制给形参,函数中对形参的修改不会影响到实参的值。

示例代码:

#include <stdio.h>  void changeValue(int x) {     x = 10;  // 修改形参的值 }  int main() {     int num = 5;  // 实参的值     changeValue(num);  // 传递实参给形参     printf("num = %d\n", num);  // 输出实参的值,仍然为 5     return 0; } 
  1. 地址传递:将实参的地址传递给形参,通过指针访问实参的值,函数中对形参的修改会影响到实参的值。

示例代码:

#include <stdio.h>  void changeValue(int *x) {     *x = 10;  // 通过指针修改实参的值 }  int main() {     int num = 5;  // 实参的值     changeValue(&num);  // 传递实参的地址给形参     printf("num = %d\n", num);  // 输出实参的值,被修改为 10     return 0; } 

需要注意的是,指针变量作为形参时,可以使用地址传递来修改实参的值。而对于其他非指针类型的变量,只能通过值传递来传递实参给形参。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!