第八讲_河氙数(二) .pptVIP

  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文档。上传文档
查看更多
第八讲_河氙数(二)

9 《C++语言及编程技巧》 第8讲 函数(二) 4.5通过函数参数传递数据 4.6数组作为函数参数传递 4.5 通过函数参数传递数据 示例 承例8 /* program findmax.cpp */ #include iostream.h main() { int a,b,c; ...... cinab; c=max(a,b); ...... } int max(int i,int j) { ...... } 4.5 通过函数参数传递数据 参数传递称为“实虚结合”,即实参向形参传递信息,使形参具有确切地含义(即具有对应的存储空间和初值)。这种传递又分为两种不同的方式,一种是按值传递,另一种是地址传递或引用传递。 传值调用——为形参分配与实参相应的存储单元,并将实参的值传递过去。在被调用函数中修改形参的值并不能影响调用函数中实参的原始值。 传引用调用——为形参分配实参的存储单元地址,从而有可能在被调用函数中修改了调用函数中实参的原始值。 4.5 通过函数参数传递数据 例18 函数的参数传递的程序示例 /* program oneway.cpp */ #include iostream.h main() { int a,b; int fun(int x,int y); a=1; b=2; coutmain_1:a=“a“b=“bendl; fun(a,b); coutmain_2:a=“a“b=“bendl; } 4.5 通过函数参数传递数据 int fun(int x,int y) { coutfun_1:x=“x“y=“yendl; x=8; y=7; coutfun_2:x=“x“y=“yendl; return; } 4.5 通过函数参数传递数据 以按值传递方式进行参数传递的过程为:首先计算出实参表达式的值,接着给对应的形参变量分配一个存储空间,该空间的大小等于该形参类型的长度,然后把已求出的实参表达式的值一一存入到为形参变量分配的存储空间中,成为形参变量的初值,供被调用函数执行时使用。这种传递是把实参表达式的值传送给对应的形参变量,故称这种传递方式为“按值传递”。这种方式被调用函数本身不对实参进行操作,也就是说,即使形参的值在函数中发生了变化,实参的值也完全不会受到影响,仍为调用前的值。 4.5 通过函数参数传递数据 2. 引用传递 按值传递方式容易理解,但形参值的改变不能对实参产生影响;如果以引用作为参数,则既可以使得对形参的任何操作都能改变相应的实参的数据,又使函数调用显得方便、自然。也就是说,传引用调用时传递的是实参的地址,这使得函数调进过程中,形参实际上真正代表其对应的实参,从而任何对形参的值的改变都必然反映到实参上。引用传递方式是在函数定义时在形参前面加上引用运算符“”。 4.5 通过函数参数传递数据 例19: #include iostream.h void swap(int ,int ); void main() { int a=3,b=4; couta=a,b=“ bendl; swap(a,b); couta=a,b=“ bendl; } 4.5 通过函数参数传递数据 3. 地址传递 如果在函数定义时将形参的类型说明成指针,对这样的函数进行调用时就需要指定地址值形式的实参。这时的参数传递方式即为地址传递方式。这种地址传递与上述的按值传递不同,它把实参的存储地址传送给对应的形参,从而使得形参指针和实参指针指向同一个地址。因此,被调用函数中对形参指针所指向的地址中内容的任何改变都会影响到实参。 4.5 通过函数参数传递数据 例20: #include iostream.h void swap(int *,int *); void main() { int a=3,b=4; couta=a,b=“ bendl; swap(a,b); couta=a,b=“ bendl; } 4.5 通过函数参数传递数据 4.5 通过函数参数传递数据 4.5 通过函数参数传递数据 //program C4_14.cpp #include iostream.h #include iomanip.h const int DEFAULT=10; int volumn(int length=DEFAULT,int width=DEFAULT,int height=DEFAULT); void main() { int l,w,h,v; l=5;w=8;h=20; v=volumn(l,w,h); coutFor l=

文档评论(0)

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

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

1亿VIP精品文档

相关文档