- 1、本文档共71页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
零点起飞学C之通用语句块——函数
第9章 通用语句块——函数在C++语言中,用于完成一个特定任务的子程序被称作函数(function)。C++程序通常是由多个函数组成,每一个函数完成其指定的任务。函数是在所有的C++程序中必须使用的对象,如读者曾经接触过的第一个C++函数就是main()。学习本章,读者将初步了解重复利用代码最简单、最基本的方法,从而了解结构化编程的好处。9.1 定义函数函数的定义就是对函数的描述,包括接口和函数体两部分。其中,接口说明函数应该怎么使用,包括函数名称、入口参数和返回值;函数体则具体实现了该函数所定义的功能。本节将介绍三种函数的定义方式。9.1.1 定义方式函数由函数名、函数的返回值及返回值的类型、函数的参数及参数的类型和函数体组成。格式如下所示:返回类型 函数名 ( 类型 形参名1 ,..., 类型 形参名n){ ... ... 函数体 ...}其中,返回类型指函数用return返回的函数值的数据类型。如果定义的函数不需要返回值,则返回类型应该指定为void类型。函数名(function)是用户定义的函数标识符。要求符合C++标识符的命名规范,但应尽量避免用下划线开头,因为编译器常常会定义一些下划线开头的函数。函数名应尽可能反映函数的功能,一般由几个单词组成,如用于获取学生的姓名的函数GetStudentName()。形式参数表由0个或多个形参变量组成,用于向函数传送数值或从函数返回数值。每一个形参都有自己的类型,形参之间用逗号分隔。大括号“{}”和包含在括号中的语句部分称为函数体。函数的功能通过函数体中的语句来完成。1.无返回值类型的函数如果定义的函数不需要返回值类型,需要将返回值类型指定为void类型。【示例9-1】 定义一个无返回值的函数。void DisplayWelcomeMsg (){ cout Welcome to Learn C++ Function! endl; cout Written by: Qing guang jun. endl;} 分析:这个函数定义了一个显示欢迎信息的函数DisplayWelcomeMsg(),没有返回值,也没有形式参数。2.有返回值类型,无形参的函数此类函数只有函数名和返回值类型,但不带形式参数。【示例9-2】 没有传入参数,根据命令行输入的数据返回真假。bool GetState(){ int bstate; //读入数字 cin bstate; if (state 0 ) { return true; } else { return false; }}分析:该函数的返回值是bool型,当用户从键盘输入的数字是正数时,返回真true;否则返回假false。3.有返回值类型,也有形参的函数定义此类函数具有函数的完整特征包括函数名、函数的返回值及返回值的类型、函数的参数及参数的类型。这也是在用C++语言编写程序时,用的最多的一种函数定义类型。【示例9-3】 用函数计算任意两个整数的乘积,代码如下所示。分析:在本例中定义了计算任意两个整数乘积的函数。MultTwo是函数名,其左边的int表示该函数要返回的类型是整型。x和y是该函数的两个形式参数,它们的类型都是整型。大括号{}中的语句行是函数体,本示例中,函数体很简单,只有一条包含了乘法运算和return的语句。9.1.2 函数定义的示例示例9-3的函数MultTwo放在主程序main()函数的前面,如果把MultTwo放在main()函数之后,将是错误的。【示例9-4】 演示将MultTwo放在main()之后的情况。int main(){...result = MultTwo(x,y); //将会出现‘函数使用时必须先定义’的编译错误...}int MultTwo(int x, int y){... }分析:上面代码在编译时,编译器将会出现MultTwo undeclared (first use this function) (函数使用时必须先定义)的编译错误。函数的定义是允许放在main()函数之后的,但必须在main()函数前即程序的开头部分声明该函数的原型。【示例9-5】 示例9-4正确的写法如下。分析:在本例中程序开始部分声明了函数MultTwo的原型(function prototype),因此编译时,编译器不会报错。C++中的函数原型是由早期的C语言版本继承而来。对函数的所有特征(函数名、返回值的类型、函数的参数)给予预先的描述称为函数的原型。函数原型一般放在整个程序文件的开始部分。例如:int MultTwo(int x, int y);函数原型一般没有函数体,并用一个分号作为语句结束符。参数列表中的形式参数名可以省略。如下是合法的函数原型:int MultTwo(int, int);对于可以在当前
您可能关注的文档
- 最全最实用地质年代表A3.doc
- Part One-Chapter5 -Double layer-Chen SL 14-15.ppt
- unit3金融英语.ppt
- 汉英笔译必备句型.pptx
- 古生物各论复习.doc
- 精读英语第三课PPT词汇解析.pptx
- 管理经济学讲义5.ppt
- 第二章 国际贸易的微观基础(一).ppt
- 地质年代表1(较新).doc
- Delphi日期函数及日期加减.doc
- 新高考生物二轮复习讲练测第6讲 遗传的分子基础(检测) (原卷版).docx
- 新高考生物二轮复习讲练测第12讲 生物与环境(检测)(原卷版).docx
- 新高考生物二轮复习讲练测第3讲 酶和ATP(检测)(原卷版).docx
- 新高考生物二轮复习讲练测第9讲 神经调节与体液调节(检测)(原卷版).docx
- 新高考生物二轮复习讲练测第11讲 植物生命活动的调节(讲练)(原卷版).docx
- 新高考生物二轮复习讲练测第8讲 生物的变异、育种与进化(检测)(原卷版).docx
- 新高考生物二轮复习讲练测第5讲 细胞的分裂、分化、衰老和死亡(讲练)(原卷版).docx
- 新高考生物二轮复习讲练测第5讲 细胞的分裂、分化、衰老和死亡(检测)(原卷版).docx
- 新高考生物二轮复习讲练测第12讲 生物与环境(讲练)(原卷版).docx
- 新高考生物二轮复习讲练测第11讲 植物生命活动的调节(检测)(原卷版).docx
文档评论(0)