第5章 函数调用(2011-5-26).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文档。上传文档
查看更多
第5章 函数调用(2011-5-26)

/35 5.1 函数的声明和调用 5.2 函数间的参数传递 5.3 函数的嵌套调用与递归调用 5.4 变量的存储属性 5.5 内联函数 5.6 函数重载 5.7 函数模版 函数调用层次关系:逐步细化 5.2 函数间的参数传递 5.2.1 基本概念 5.2.2 函数间的参数传递 5.2.1 基本概念 一、形式参数和实际参数 形式参数(形参) 实际参数(实参) 形参特点 实参特点 无参函数 有参函数 二、函数调用的一般形式 三、函数的调用语句 一、形式参数和实际参数 主调函数和被调用函数之间有数据传递关系。 在定义函数时函数名后面括号中的变量名称为形式参数(formal parameter),简称形参。 在主调函数中调用一个函数时,函数名后面括号中的参数(可以是一个表达式)称为实际参数(actual parameter),简称实参。 函数参数 函数参数: 形参( 形式参数 ): 在定义函数时,定义函数名后面括号中的变量名 实参( 实际参数 ): 在主调函数中调用一个函数,调用函数名后面括号中的参数(或表达式) 形参特点 形参表有零个,一个或多个参数组成; 形参表由数据类型、变量名称组成,多个形参之间用逗号分隔; 同类型的形参之间也要分别说明其类型; 形参在函数被调用前不占内存,函数调用时为形参分配内存;调用结束,内存释放。 实参特点 实参表有零个,一个或多个参数组成; 实参可以是常量、变量或表达式。但实参必须有确定的值; 实参为变量时,其名称与形参的名称可以一样,也可以不一样。 二、函数调用的一般形式 如果是调用无参函数,则“实参表列”可以没有,但括号不能省略。 如果实参表列包含多个实参,则各参数间用逗号隔开。 实参与形参的个数应相等,类型一致,顺序一致。 三、函数的调用语句 函数调用格式: 函数名( ); //无参函数 函数名(参数表);//有参函数 函数调用方式: 函数语句方式 prints( ); 函数表达式方式 z=max(x,y)+3; 函数参数方式 coutmax(x,y); z=max(max(a,b), max(c,d)); 例5:无参函数 例6:有参函数 例7:函数间的参数传递 P78-80 传值 传址 引用 :P80 变量的引用 引用是一种新的变量类型,它的作用是为一个变量起一个别名。 引用型变量的格式: 数据类型 引用名 =变量名; 假如有一个变量a,想给它起一个别名b,可以这样写: int a; //定义a是整型变量 int b=a; //声明b是a的引用 以上语句声明了b是a的引用,即b是a的别名。经过这样的声明后,a或b的作用相同,都代表同一变量。 注意 是引用声明符,并不代表地址。 不要理解为“把a的值赋给b的地址”。声明变量b为引用类型,并不需要另外开辟内存单元来存放b的值。b和a占内存中的同一个存储单元,它们具有同一地址。 声明b是a的引用,可以理解为: 使变量b具有变量a的地址。见下图,如果a的值是20,则b的值也是20。 注意 在声明一个引用类型变量时,必须同时使之初始化,即声明它代表哪一个变量。 在声明变量b是变量a的引用后,在它们所在函数执行期间,该引用类型变量b始终与其代表的变量a相联系,不能再作为其他变量的引用(别名)。 下面的用法不对: int a1,a2; int b=a1; int b=a2; //企图使b又变成a2的引用(别名)是不行的 例8 引用和变量的关系 5.2.2 函数间的参数传递 函数参数传递: 传值:将变量名作为实参和形参。这时传给形参的是变量的值,传递是单向的。如果在执行函数期间形参的值发生变化,并不传回给实参。因为在调用函数时,形参和实参不是同一个存储单元。 传址:传递变量的指针。形参是指针变量,实参是一个变量的地址,调用函数时,形参(指针变量)指向实参变量单元。 引用: 即传送变量的别名。 函数参数传递 一、参数传递 传值 传址 引用 例如:输入两整数交换后输出? 二、分析:按值传递 三、默认形参值的作用 例5.1:传值传递 传值传递 例5.2 传址传递 传址传递 例5.3 引用传递 引用传递 例9 按值传递:输入两整数交换后输出 按值传递 形参与实参占用不同的内存单元。 在函数被调用时才分配形参的存储单元,并将形参值复制到形参中; 调用结束后,形参单元被释放,实参单元的值仍保留并维持原值。 传递时是传递参数值,即单向传递。 默认形参值的作用 函数在声明时可以预先给出默认的形参值: 调用时如给出实参,则采用实参值; 否则采用预先给出的默认形参值。 例如: 默认形参值的说明次序 默认形参值必须从右向左顺序声明; 并且在默认形参值的右面不能有

文档评论(0)

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

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

版权声明书
用户编号:6111134150000003

1亿VIP精品文档

相关文档