C语言中“实际参数”“形式参数”的概念是什么?

C语言中“实际参数”“形式参数”的概念是什么?,第1张

形式参数就是定义函数时候的参数表,只是定义了调用时参数的个数、类型和用来引用的名字,并没有具体的内容。形参未被调用时,不占存储单元。形参只在调用过程中占用存储单元。

在调用函数时,给形参分配存储单元,实参可以是常量、变量或者表达式,且要与形参类型一致!而且实参要有确定的值,在调用过程中实参将值赋给形参,并将实际参数对应的数值传递给形式参数;

调用结束后,形参单元被释放,实参单元仍然保留

并且维持原值。所以说,实参是调用函数传递的具体数据。实参对形参数据传递时时单向传递。在存储单元中是不同的单元。

下面这段程序中

#include<stdioh>

int

fun(int

a,int

b)

{a+=10;

b=a+b2;

return

a+b;

}

void

main()

{

int

x=3,y=5,z;

z=fun(x,y);

printf("%d

%d

%d\n",x,y,z);

}

a和b都是形式参数,x和y都是实际参数。

程序从主函数开始运行,等到运行到z=fun(x,y)开始调用被调用函数,以被调用函数的形式进行运算,然后把计算的值返回后赋值给z,这样一个运算就算完成了。在调用过程中,形参a和b的值都发生了改变,但是在main函数中,x和y的值都未发生变化。所以说实参向形参的值的传递是单向的。

1、形参个数不能太多,多了就用结构体指针吧;

2、不需要携带数据返回的放在前面,需要携带数据返回类型的放在后面吧;

3、不要直接传递结构体哦;

4、一般地,指针类型最好加上const修饰,除非有特殊用途;

5、尽量不要使用bool类型做为形式参数;

6、别忘了给一个简洁好听的名字

传值调用和引用调用  传值调用和引用调用指的是用于参数传递过程中的一种机制。传值调用中,只使用了实参的值。传值调用机制里,形参是一个局部变量,其初始值为相应实参的值。在引用调用机制里,将实参的地址传递给形参,从表面上看是以实参变量取代形参,因此任何发生在形参上的改变实际上都发生在实参变量上。

形参的作用是实现主调函数与被调函数之间的联系,通常将函数所处理的数据,影响函数功能的因素或者函数处理的结果作为形参。没有形参的函数在形参表的位置应该写voidmain

函数也可以有形参和返回值,其形参也称为命令行参数,由 *** 作系统在启动程序时初始化,其返回值传递给 *** 作系统。

形参和实参的对照实例(C语言版)  main()  {  int

n;  printf("input

number

\n");  scanf("%d",&n);  s(n);  printf("n=%d\n",n);  }  int

s(int

n)  {  int

i;  for(i=n-1;i>=1;i--)  n=n+i;  printf("n=%d\n",n);  }

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/12155633.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-21
下一篇 2023-05-21

发表评论

登录后才能评论

评论列表(0条)

保存