- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第7-9讲 函数
函数 第4章 第7讲 4.1-4.4 重点介绍函数定义、返回值、调用以及参数传递 关于函数 一个C++的程序是由若干个源程序文件(即.cpp文件)构成的,而一个源程序文件是由若干个函数构成的。 利用函数的目的有两个方面: 一方面使程序更利于维护、逻辑上更加清晰; 另一方面对于某些相同的功能,可以通过多次函数调用完成该功能的多次实现,从而减少重复性代码的编写工作。 本章主要内容 1.函数的定义方法和调用方法。 2.函数的类型和返回值。 3.形式参数与实际参数,参数值的传递。 4.变量的作用域、生存周期和存储类别(自动、静态、寄存器,外部)。 5.函数的递归调用。 6.函数重载。 7.内联函数。 8.带有默认参数值的函数。 4.1 函数定义 从用户的角度看,有两种不同的函数:库函数和用户自定义函数。 库函数也称标准函数,它是由C++系统提供的,用户不必自己定义便可在程序中直接使用,如,求平方根函数sqrt、字符串连接函数strcat等; 而用户自定义函数则需要用户根据程序的要求进行定义后,才可在程序中进行使用。 定义函数的一般形式为: 函数返回值的数据类型标识符 函数名(形式参数表) { 函数体 } 说明: (1)函数返回值的数据类型标识符表示该函数返回值的类型。 (2)函数名即函数的名称,由用户给定,其命名规则与其他标识符的命名规则相同。 (3)形式参数(即形参)的书写形式要采用新的ANSI标准,即把形参放在函数名后面的括号内,每个参数由参数类型和参数名构成。当形参有多个时,各参数间必须用逗号隔开。 (4)如果函数是无参函数,函数名后面的圆括号也不能省略。 (5)函数体由在一对花括号中的若干条语句组成。 如: void larger(int x,int y) { if(xy) coutThe larger is xendl; else if(yx) coutThe larger is yendl; else coutTwo values are equal.endl; } 对于函数的定义还要注意以下问题。 (1)所有的函数都要先定义、后使用(调用)。 (2)不能省略函数返回值的类型,而是必须要表明该函数返回的函数值的类型。当该函数没有返回值时,函数返回值的类型要写成void。 (3)C++不允许在一个函数体内再定义另一个函数,所有函数的定义必须是平行的、独立的。 4.2 函数的返回值 通常人们希望通过调用某一函数得到一个确定的值,这就是函数的返回值。 下面就对函数的返回值作几点说明: (1)函数的返回值是通过函数体中的return语句获得的,return语句将被调用函数中的一个确定的值带回主调函数中。如: int larger(int x,int y) { return(xy?x:y); } (2)函数值的类型:既然函数有返回值,这个值当然应属于一个确定的类型,这个类型就是在定义函数时说明的函数返回值的类型。在定义函数时,当函数返回值说明的类型和return语句中的表达式类型不一致时,则以函数返回值说明的类型为准。 (3)如果被调用函数中没有return语句,则该函数不带回用户所希望得到的一个确定的函数值,但实际上,函数并不是不带回值,只是带回一个不确定的值,为了明确表示函数“不返回值”,可以用viod将函数定义为无返回值类型。如: void show() { coutI love c++!; } 这样,系统就保证show函数不带回任何值。 (4)return语句可以出现在程序的任何位置。一旦执行了return语句,则意味着被调函数执行结束,需要返回到主调函数,此时return语句后面的所有语句都不会被执行。 4.3 函数调用 函数调用是指在程序中使用了该函数。 如果在一个程序中有函数A和B,并且在函数A中使用了函数B,则称函数A调用了函数B。 函数A称为主调函数,函数B称为被调函数,在函数A中进行调用函数B的那条语句称为调用点。 4.3.1 函数调用形式 函数调用的一般形式为: 函数名(实参列表) 如果程序中调用的是无参函数,则实参列表可以省略,但函数的圆括号不能省略,如果实参表中有多个参数,则它们之间用逗号隔开,实参的类型、个数应与形参的类型、个数一一对应。 可以通过下列三种方式来完成函数调用: (1)函数调用语句:即在一个函数的调用后面加上“;”作为一个语句。这里并不要求返回一个函数值,只是执行了被调函数的函数体内的操作。如: show(); (2)函数表达式:即函数出现在一个表达式中,这种表达式称为函数表达式,但这时要求函数带回一个确定的值以参加表达式的运算。如: c=2*larger(a,b); (3)函
文档评论(0)