第2章 函数和作用域ppt课件.ppt

第2章 函数和作用域ppt课件.ppt

ID:59202297

大小:158.50 KB

页数:52页

时间:2020-09-26

第2章 函数和作用域ppt课件.ppt_第1页
第2章 函数和作用域ppt课件.ppt_第2页
第2章 函数和作用域ppt课件.ppt_第3页
第2章 函数和作用域ppt课件.ppt_第4页
第2章 函数和作用域ppt课件.ppt_第5页
资源描述:

《第2章 函数和作用域ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第2章函数和作用域2.1函数定义和调用2.2C++函数特性2.3作用域和存储类型2.4名称空间2.5综合应用实例:Fibonacci数列2.1函数定义和调用C++的任何一个程序都可由一个主函数和若干个子函数组合而成。主函数可以调用子函数,子函数还可以调用其他子函数。C++规定主函数名必须是main,而其他函数可以是库函数或自定义函数。主函数main不仅是程序的入口函数,而且与其他函数相比较还有许多使用上的限制。例如,它不能被其他函数调用,不能用inline和static来说明等。ANSI/ISOC++还规定主函数main的函数类型必须是

2、int,以保证程序的移植性。库函数,又称标准函数,是ANSI/ISOC++编译系统已经预先定义好的函数,程序设计时可根据实际需要,直接使用这类函数,而不必重新定义。调用时,必须在程序中包含相应的头文件,并指明使用名称空间std。自定义函数是用户根据程序的需要,将某一个功能相对独立的程序定义成的一个函数,或将解决某个问题的算法用一个函数来组织。与变量的使用规则相同,在C++程序中一定要先说明和定义函数,然后才能调用函数。C++中每一个函数的定义都是由4个部分组成的,即函数名、函数类型、形式参数表和函数体,其定义的格式如下:2.1.1函数定

3、义<函数类型><函数名>(<形式参数表>){<若干语句>}函数体2.1.1函数定义其中,函数名应是一个合法有效的C++标识符;函数头的形式参数又简称为形参。参数表中的每一个形参都是由形参的数据类型和形参名来构成,形数个数可以是0,表示没有形式参数,但圆括号不能省略,也可以是1个或多个形参,但多个形参间要用逗号分隔。由花括号构成的是函数的函数体部分,它可以有若干条语句,用于实现这个函数执行的功能。根据上述定义格式,可以编写一个函数sum,如图2.1所示,注意它们的书写规范。intsum(intx,inty){intz=x+y;return

4、z;}对齐函数头函数体缩进函数类型函数名形参图2.1定义一个函数sum2.1.1函数定义需要说明的是:(1)C/C++不允许在一个函数体中再定义函数,即禁止嵌套定义,但允许嵌套调用。(2)函数体也可不含有任何语句,这样的函数称为空函数,它仅为程序结构而设定,本身没有任何操作。(3)函数类型决定了函数所需要的返回值类型,它可以是除数组类型之外的任何有效的C++数据类型,包括引用、指针等。一旦指定了函数类型,则须在函数体中通过return语句来指定函数的返回值,且返回值的类型应与函数类型相同,若返回值的类型与函数类型不相同,则程序按类型自动

5、转换方式转换成函数的类型或将return后面的表达式进行强制转换。(4)若函数类型为void时,则表示该函数没有返回值。但仍然可以在函数体中使用return语句“return ;”,此时可将“return;”语句理解为是函数体花括号“}”的作用,当流程遇到函数体的“}”时,函数调用结束,控制权返回给主调函数。例如:voidf1(inta){if(a>10)return;//return;一旦执行,后面的语句不再被执行…}当a>10条件满足时,“return;”语句将控制权返回给主调函数。2.1.2函数的调用和声明1.函数的实参和形参定义

6、一个函数就是为了以后的调用。调用函数时,先写函数名,然后紧跟括号,括号里是实际调用该函数时所给定的参数,称为实际参数,简称实参,并与形参相对应。要注意形参和实参的区别:(1)从模块概念来说,形参是函数的接口,是存在于函数内部的变量。而实参是存在于函数外部的变量。它们不是同一个实体,也就是说,形参变量和实参变量所对应的内存空间不是同一个内存空间。(2)按函数定义时所指定的形参类型,实参除变量外还可以是数值或表达式等,而形参只能是变量。(3)形参在函数调用之前是不存在的,只有在发生函数调用时,函数中的形参才会被分配内存空间,然后执行函数体中

7、的语句,而当调用结束后,形参所占的内存空间又会被释放。2.函数的调用函数调用的一般格式为:<函数名>(<实参表>)调用函数时要注意:实参与形参的个数应相等,类型应一致,且按顺序对应,一一传递数据。例如,下面的示例用来输出一个三角形的图案。2.1.2函数的调用和声明[例Ex_Call]函数的调用#includeusingnamespacestd;voidprintline(charch,intn){for(inti=0;i

8、r(inti=0;i

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。