和形参实参以及参数的传递方式总结.docVIP

和形参实参以及参数的传递方式总结.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
和形参实参以及参数的传递方式总结.doc

C/C++中实参与形参的应用 目录 TOC \o 1-5 \h \z 翻 3 HYPERLINK \l bookmark2 \o Current Document \h 形参与实参的定义 3 3 錢 3 HYPERLINK \l bookmark5 \o Current Document \h 值传递、地址传递以及引用传递 3 3.1 船腿 3 HYPERLINK \l bookmark7 \o Current Document \h 3.2地址传递 5 HYPERLINK \l bookmark9 \o Current Document \h 3.3引川传递 6 HYPERLINK \l bookmark11 \o Current Document \h 总结 7 辦办当 7 1. 木笔记主要整理了 C/C++屮形参与实参定义及区别,以及参数的似传递、地址传递、引用传递 的作用与意义。 2.形参与实参的定义 2.1形参 形参全称为形式参数是在闹数定义的首部W数名后括号屮说明的变景。形参记义时编译系统并 不为其分配存储空间,也无初值,只有在函数调川时,临时分配存储空问,接受实参的值。当函 数调川结束,内存空间释放,值消失。丼且,必须注意实参的个数,类型应与形参一一对庖,并 II实参必须要冇确定的似。 2.2实参 实参全称为实际参数圮当一个W数被调川的时候在被调川处给出对应的参数。实参可以是常量、 变量、表达式、函数等,无论实参是何种类型的ffl,在进行函数调用时,它们都必须具打确定 的似,以便把这些值传送给形参。W此应预先用赋值,输入等办法使实参获得确定位,并且实 参足单向的将值传给形参。 3.值传递、地址传递以及引用传递 3.1值传递 值传递顾名思义就足将实参的实际值传递给形参,此吋形参就相当于将实参的悄:拷W下来,参与 被调川函数的运算,而改变形参的值并不会影响外部实参的值(实参->形参,单向的值传递)。 下面就通过代码和示意阁说明。 void main(void) uint8 Counted = 3u; uint8 Counter2 = 5u; Swap(Counter1,Counter2); } void Swap(uint8 Parameterl, uint8 Parameter2) { uint8 Temp = Ou; Temp = Parameterl; Parameterl = Parameter2; Parameter2 = Temp; return; } 函数调用前Counted和Counter2的值分别为3和5;调用时给Parameter!和Parameter2分 配空间,并将实参Counted和Counter2的值分别俾给Parameterl和Parameter2;交换时将 Parameterl 和 Parameter2 的值变成 5 和 3; {口.调用后 Parameterl 和 Parameter2 的空|川被释 放;此吋,Counter!和Counter2的值并没有因为Parameter!和Parameter2的改变而改变, W为它们占用的是不同的N存单元。 Sjjulerl CcunLei2 Cuur ilerl Counler2 Codnterl C〕」(rer2 Ccunterl Ccunter2 ni 5 11 5 ii 31 Para mererl Pararrctcr2 Parameterl Para mere r2 调用前调用时调用后 调用前 调用时 调用后 3.2地址传递 地址传递其实也是似传递,只不过传递的参数是地址而已。此时形参也会将实参的侦拷贝下来, 只不过此时的形参值是地址,前面我们已经知道实参与形参的数据传递是中.向的,但是由于内存 空间的唯一指向性,所以此吋的实参和形参都会指向问一个内存单元,即形参所指向的单元发生 变化,实参地址的rt存单元也会变化。下面就通过代码和示意图说明。 void main(void) { uint8 Counted = 3u; uint8 Counter2 = 5u; Swap(Counter1, Counter2); } void Swap(uint8 *Para1_Ptr, uint8 *Para2_Ptr) { uint8 Temp = Ou; Temp = *Para1_Ptr; *Para1 Ptr = *Para2 Ptr; *Para2_Ptr = Temp; return; } 函数调用前Counted和Counter2的值分别为3和5;调用时给Para1_Ptr和Para2_Ptr分配 空间,并且它们分别指向Counter!和Counter2的内存空间;交换时,Para1_Ptr和Para2_Ptr 所指

文档评论(0)

ggkkppp + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档