当前位置:首页 » 服务存储 » 函数形参实参存储单元
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

函数形参实参存储单元

发布时间: 2022-07-26 23:19:13

1. 在c语言中,函数的形参和实参可以占同一个存储单元,也可以占不同的存储单元吧

形参只是实参的一个副本,即拷贝,它们不能公用存储单元。

参数之间的传递分为数值传递与地址传递,如果是数值传递时,各自占用不同的内存单元,如果是地址传递时,共用同一段内存单元。

函数调用时,主调函数把实参的值传送给被调函数的形参从而实现主调函数向被调函数的数据传送。 形参变量只有在被调用时才分配内存单元,在调用结束时,即刻释放所分配的回内存单元。

形参只是实参的一个副本,即拷贝,它们不能公用存储单元,不占相同的空间。

(1)函数形参实参存储单元扩展阅读:

函数调用过程

1、函数的形参列于函数声明中,在函数定义的函数体内使用。在未出现函数调用时,形参不占内存中的存储单元;当函数调用时,形参(任何种类的)是一类将被填充的空白或是占位符。

2、将实参的值传递给形参。当函数被调用时,实参列在函数名后面的括号里。执行函数调用时,实参被传递给形参。

3、在执行函数期间,由于形参已经有值,可以利用其进行相关运算。

4、通过return语句将函数值带回到主调函数。

5、调用结束,形参单元被释放。实参单元仍保留并维持原值(值传递)。

2. 调用函数时,实参和形参可以共用内存单元吗,为什么

你对程序的理解就错了。实参是你实际传进函数的参数,而形参只表示实参在传进函数之后的名字,不占内存

3. 函数调用时,实参和与其对应的形参各占独立的存储单元

这句话正确

如果改成无论函数调用与否 实参和与其对应的形参各占独立的存储单元就不对了

呵呵 因为函数是传值不传址的
当然 这是通性 存在例外 如参数为数组的时候

4. 在c语言中 调用函数时,形参与实参可以共用存储单元吗

答案肯定的——形参和实参可以完全一样。
在程序执行的过程中,实参的作用域是主函数,只要程序没有停止,实参一直有效;
形参是定义函数是引入的参数,系统只在该函数被调用时分配临时内存,当自定义函数执行完后,用于临时储存形参的空间将被释放。
所以即使形参和实参的类型,名字完全一样,系统也能够把它们区分开。即可以完全一样。
注:解决这个疑问关键是要搞清楚变量作用域方面的内容。

5. c语言中,函数发生调用时,实参和形参都会占用内存吗

是的,形参和实参是两个不同的存储单元,都占用内存空间,当函数调用结束后,形参的内存空间也就会被释放掉了。

6. c语言的形参是否占存储单元

C。

函数的形参是函数定义时由用户定义的形式上的变量,实参是函数调用时,主调函数;被调函数提供的原始数据。

形参变量只有在被调用时才分配内存单元,在调用结束时,即刻释放所分配的内存单元。因此,形参只有在函数内部有效。函数调用结束返回主调函数后则不能再使用该形参变量。实参和其所对应的形参分别占用不同的存储单元,彼此之间不影响。

(6)函数形参实参存储单元扩展阅读:

形参和实参的特点

1、形参变量只有在被调用时才分配内存单元,在调用结束时,即刻释放所分配的内存单元。因此,形参只在函数内部有效。函数调用结束返回主调用函数后则不能再使用该形参变量。

2、实参可以是常量、变量、表达式、函数等,无论实参是何种类型的量,在进行函数调用时,它们都必须有确定的值,以便把这些值传送给形参。因此应预先用赋值,输入等办法使参数获得确定值。

3、实参和形参在数量上,类型上、顺序上应严格一致,否则就会发生类型不匹配的错误。

4、在一般传值调用的机制中只能把实参传送给形参,而不能把形参的值反向地传送给实参。因此在函数调用过程中,形参值发生改变,而实参中的值不会变化。而在引用调用的机制当中是将实参引用的地址传递给了形参,所以任何发生在形参上的改变实际上也发生在实参变量上。

网络-形参

7. 请教关于C语言形参和实参存储单元的问题

你的第一点理解是完全正确的。第二点理解应该说也是对的;但贴切一点说,数组和指针传给形参时也是只拷贝了指针变量(数组名也是指针变量,所以一起说),这被拷贝的“指针变量”也是临时的,函数退出时就消失了。不过,拷贝过来指针变量后的形参指向却是实参的指向,就相当于:
pa=&i;
pb=pa;
看,pa、pb都指向了i,在被调函数中操作pb的指向不也是操作i嘛!
其效果和你理解的是一样的,我只是说说它的实质。

8. 实参和形参都需要占用存储单元么

实参和形参各占用独立的存储单元。

实参和形参是各占独立存储空间,函数调用过程中,实参向形参拷贝复制值。实参是个变量,形参也是个变量。

如果占用同一片空间的话,编译时候就不存在实参形参类型不匹配的报错。参数传递中,形参值的改变不影响实参的值。


(8)函数形参实参存储单元扩展阅读

形参和实参的区别

1、形参变量只有在被调用时才分配内存单元,在调用结束时,即刻释放所分配的内存单元。因此,形参只有在函数内部有效。函数调用结束返回主调函数后则不能再使用该形参变量。

2、实参可以是常量、变量、表达式、函数等,无论实参是何种类型的量,在进行函数调用时,它们都必须具有确定的值,以便把这些值传送给形参。因此应预先用赋值,输入等办法使实参获得确定值。

3、实参和形参在数量上,类型上,顺序上应严格一致,否则会发生“类型不匹配”的错误。

4、函数调用中发生的数据传送是单向的。即只能把实参的值传送给形参,而不能把形参的值反向地传送给实参。因此在函数调用过程中,形参的值发生改变,而实参中的值不会变化。