C语言菜鸟问题:形参与实参的作用

 我来答
检清安布亥
2019-06-23 · TA获得超过3.6万个赞
知道大有可为答主
回答量:1.4万
采纳率:31%
帮助的人:698万
展开全部
<1>
在定义函数中指定的形参,在未出现函数调用时,它们并不占内存中的存储单元.只有在发生函数调用时,函数中形参才被分配内存单元.在调用结束后,形参所占的内存单元也被释放。
<2>
实参可以是常量、变量或表达式,如:max(3,
a+b);
但要求它们有确定的值。在调用时将实参的值赋绐形参(如果形参是数组名,则传递的是数组首地址而不是数组的值。)
<3>
在被定义的函数中,必须指定形参的类型。
<4>
实参与形参的类型应相同或赋值兼容。类型不相同时,按赋值运算时的类型转换规则进行转换。
<5>
C语言规定,实参变量对形参变量的数据传递是“值传递”,即单向传递,只由实参传绐形参,而不能由形参传回来绐实参,这是和fortran不同的。在内存中,实参单元与形参单元是不同的单元。
调用函数时,绐形参分配内存单元,并将实参对应的值传递绐形参,调用结束后,形参单元被释放,实参单元仍保留并维持原值。因此在执行一个被调用函数时,形参的值如果发生改变,并不会改变主调用函数的实参的值。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式