C/C++中实参和参数的区别
在C/C++中,函数的参数有两种:形式参数和实际参数。这篇文章将会讲解这两种参数的区别,以及它们在函数调用和定义中的使用方法。
形式参数和实际参数
形式参数
在函数定义时,参数列表中声明的参数被称为形式参数。它们在函数内部作为局部变量使用,函数被调用时,会将实际参数的值传递给形式参数,以便在函数内部使用。
函数定义时形式参数的语法为:
returnType functionName(parameterType parameterName, ...);
其中,parameterType
是参数类型,parameterName
是参数名称,...
表示该函数还可以接受其他参数。
实际参数
实际参数是在函数调用时传递给函数的值。这些值被传递给函数的形式参数,在函数内部被使用。
函数调用时实际参数的语法为:
functionName(argument1, argument2, ...);
其中,argument1
, argument2
, ... 为实际参数的值。
实际应用示例
示例1:计算两个数的和
下面的函数将计算两个整数的和,并返回结果:
int add(int a, int b)
{
return a + b;
}
这个函数使用了两个形式参数 a
和 b
,并返回它们的和。在函数调用时,需要提供两个实际参数,例如:
int result = add(1, 2);
在这个示例中,1
和 2
是实际参数,它们被传递给函数 add
中的形式参数 a
和 b
。函数将这两个实际参数相加,返回结果 3
。
示例2:交换两个数的值
下面的函数将交换两个整数的值:
void swap(int *a, int *b)
{
int temp = *a;
*a = *b;
*b = temp;
}
这个函数使用了两个指向整数的指针作为形式参数 a
和 b
。在函数调用时,需要将两个整数的地址作为实际参数传递给函数。例如:
int x = 1;
int y = 2;
swap(&x, &y);
在这个示例中,&x
和 &y
是实际参数,它们被传递给函数 swap
中的形式参数 a
和 b
,指针 a
和 b
指向了 x
和 y
的地址。函数使用了一个临时变量 temp
,交换了 *a
和 *b
的值。函数执行完毕后,x
的值变成 2
,y
的值变成 1
。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C C++中实参和参数的区别 - Python技术站