函数及编译预处理第5章.ppt

  1. 1、本文档共92页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
函数和编译预处理 第5章 引言 函数的定义和调用 函数的原型说明与值调用 函数的嵌套和递归调用 作用域和存储类 内联函数 具有缺省参数值的函数 函数重载 编译预处理 程序的多文件组织 本章学习要求 掌握函数定义的格式; 掌握函数原形的概念及其与头文件的关系; 掌握两种形式的函数调用(表达式中的函数调用和语句中的函数调用); 掌握函数调用过程中参数传递的原理; 掌握函数重载的方法; 掌握保留字inline的含义与使用; 了解函数和变量的作用域与生存期; 掌握和应用宏定义、条件编译、文件包含。 引言 随着模拟对象的复杂性增加,程序将会变得越来越复杂和冗长。在编写一个较大的程序时,为了便于管理,可以采用一些较好的编程策略,常用的方法是按功能或操作将程序分割成一些具有特定功能的、相对独立的且便于管理和阅读的小模块。本章主要介绍这种分割工具之一:函数,包括函数的定义、函数的调用、参数的传递方法、内联函数、函数的重载、变量的作用域等,另外简要介绍编译预处理以及程序多文件组织的编译和连接方法。 函数的定义和调用 函数概述 函数定义 函数调用 函数概述 C++中的函数就是具有特定功能的模块。函数是构成C++程序的基本单位,C++程序的运行都是由主函数(main())开始,然后通过一系列函数调用来实现各种功能。 从用户角度看,函数包括用户自定义函数和系统库函数。 从函数的形式来看,函数可以分为无参函数、有参函数、无返回值函数和有返回值函数等 。 除了main()函数以外,一个函数既可以被其它函数调用,也可以调用其它函数。 图5-l反映了函数的层次组织结构以及相互之间的调用关系 。 系统库函数 库函数也称为标准函数,是在C++编译系统中已经预先定义的函数。C++把一些常用的操作以库函数的方式提供给用户,包括常用的数学计算函数(如:sqrt()、fabs()等)、图形处理函数、标准输入/输出函数等。按功能对库函数进行分类,将同类库函数集中在一个头文件中,用户只要在程序中包含相应的头文件,就可以使用该头文件中的所有库函数。 用户自定义函数 在程序设计过程中,用户可根据自己的需要将一段完成功能相对独立的代码定义为一个函数,这类函数称为用户自定义函数。本章将主要介绍用户自定义函数的定义和调用方法。 图5-1 函数调用和被调用的层次关系 函数定义 对于库函数,在头文件中已经定义好了,调用函数前只需包含相应的头文件即可;对于用户自定义的函数,要先完成函数的定义,然后才可以调用它。根据函数定义和使用时参数的不同,可将函数分为两类:无参函数和有参函数。 无参函数 有参函数 函数返回值和return语句 无参函数 定义无参函数的一般格式为: 《类型》函数名(《void》) {…} // 函数体 类型为函数返回值的类型,它可以是任一标准数据类型或导出数据类型,当没有返回值时,《类型》必须为void。函数名为用户给函数起的名字,其命名规则与标识符相同。函数名后的括号”( )”称为函数调用运算符,对于无参函数,函数调用运算符内可以为空,也可以为void。 函数返回值为整型时,可省略类型标识符int。当函数无返回值时,必须规定其类型为void。示例 示例 void Message(void) { cout”*************\n”; cout” very good!\n”; cout”*************\n”; } 该函数完成输出一些问候语。像这类与外部环境之间没有任何数据交换的函数,通常将其定义为无参函数。 有参函数 定义有参函数的一般格式为: 《类型》函数名 (形参表) {…} // 函数体 有参函数中《类型》与函数名的含义和要求与无参函数一致。形参表为该函数的参数的类型和名字,形参表中的参数称为形式参数或形参,形参的个数是没有限制的,当超过一个参数时,参数间一定要用逗号”,”分隔开,且每个参数都要有类型说明。示例 在定义有参函数时,必须标明每个参数的类型,即使参数的数据类型相同,也不能将参数合在一起用一个类型说明符。 示例 例如,求两个整数中的大数,函数可定义为: int Max ( int x , int y ) //A { return ( xy ? x : y ) ; } 该函数有两个整型参数x,y,函数的返回值是整型。 如上例A行写成以下形式就是错误的: Max ( int x, y ) 函数返回值和return语句 函数的返回值也称为函数值。当函数有返回值时,在函数体中必须使用return语句来返回该函数的值。return语句的一般格式为: return 表达式 ;或 r

文档评论(0)

xiaofei2001128 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档