第9篇 函数的使用.ppt

  1. 1、本文档共27页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第9章 函数的使用 我们在前面编写的程序实例中基本上只有一个main函数,没有其他函数。而在实际应用中,在比较大的程序中,通常包含比较复杂的逻辑和功能,这些功能包含若干子功能,子功能可能分解出更小的子功能。这些功能组合在一起,才能形成完整的程序。在C++语言中,上述的这些功能模块是由函数来实现的。所谓函数就是一段可以实现某种功能的程序;这段程序相对独立,具有自己的输入和输出,可以被重复调用,类似一个“黑匣子”。 第9章 函数的使用 9.1 函数的概念 在C++中,可以将一段经常需要使用的代码封装起来,在需要使用时可以直接调用。C++程序的执行是从main函数开始,在main函数可调用其它函数,但其它函数中不能调用main函数。 函数的分类 从用户角度可分为 标准函数:即库函数,可直接调用。 自定义函数:需要自己写代码。 从函数的形式上可分为 无参函数:无参数传递 有参函数:有参数传递 9.2 函数的声明 函数必须首先声明然后使用,正如变量必须首先声明然后使用一样。 9.3 函数的定义 函数是由函数名以及一组操作数表示的。函数的操作数也可以称为是形参,在一对圆括号中声明的,形参与形参之间可以用逗号分割开。函数所执行的实现功能的运算是在一个称为函数体的块语句中定义的。每一个函数都有一个返回类型。我们在编写程序过程中会遇到无参函数和有参函数等类型,它们的定义相互之间是有一定的区别的。 9.3.1 不同函数类型的定义形式 函数的一般形式如下: 函数返回值类型 函数名(形式参数列表 ) { 语句部分 } 在函体中定义的变量只有在该函数中才可以访问,在main函数或其它函数中引用会出错。这种变量称为局部变量。 9.3.2 函数的返回值 函数的返回值是通过函数中的return语句获得的,return语句将被调用函数中的一个确定值带回到主调函数之中去,而如果需要从被调用函数中带回一个函数值供主调函数使用,则在函数定义体中必须要包含return语句。一个函数中可以包含多个return语句,执行到哪个语句哪个起作用。return语句的后面可以是一个值也可以是可以得出值的表达式。例如: int get_bigger(int a,int b) { return(xy?x:y); } 9.3.3 函数的形参表 形参表是一系列用逗号分隔的参数类型和参数名组成的,如果两个参数具有相同的类型,其类型也必须重复进行声明。 int get_bigger(int a,int b,int c); //正确的用法 int get_bigger(int a,b,c); //错误的用法 函数的形参表可以是空的,没有形参的函数可以用空的形参表或者在形参表中写上void来表示。下面的两种表示是相同的: void print_now(); void print_now(void); 形参与实参的数据类型必须相同或可相互转化。 9.4 函数的参数传递 每次调用函数的时候,都会重新创建被调用函数所有的形参,这个时候主调函数的位置传递的实参就会重新初始化被调用函数所有对应的形参。注意如果形参是非引用类型,则复制实参的值,如果形参为引用类型则它只是实参的别名,并不会赋值实参的值。有关概念将会在下面的章节中讲解。 9.4.1 形式参数与实际参数 在有参函数中,在调用函数的时候,主调函数和被调用函数之间有数据传递关系。在定义函数的时候函数名后面括号中的变量名称为形式参数,也就是形参;在主调函数中调用一个函数的时候,函数名后面括号中的参数称为实际参数,也就是实参。 9.4.2 非引用形参 在C++中实参向形参的数据传递是值传递。在调用函数的时候,才会给形参分配存储单元,并将实参对应的值传递给形参,调用结束后形参单元才会被释放,而实参单元仍保留并维持原值。 9.4.3 引用形参 在上一节中我们学习了一种函数中的普通的参数传递情况,这种情况下改变形参是不能影响实参的值的。那么如何实现通过改变形参的值直接改变实参的值的效果呢?这就需要设置引用形参了。 9.5 函数的调用 函数调用的形式为: 函数名(实参列表); 当调用无参函数的额时候实参列表是可以没有的,只写一个空的圆括号即可。如果实参列表包含有多个实参时,则各个参数之间使用逗号隔开,注意实参和形参的个数应该相等而且类型也应当匹配或者能相互转换。函数调用的一般有三种情况。 第一种情况就是当不需要函数带回一定的返回值时,将函数调用看成一个语句。 第二种情况是函数出现在表达式之中,直接将函数的返回值作为表达式的一个操作数参与运算,这种情况中的函数需要带回返回值。 第三种情况是直接将函数调用作为另一个函数调用的实参。 9.6 函数的嵌套调用 在前面章节的学习中我们了解到,在C++中函数是不能嵌套定义的。但是

文档评论(0)

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

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

1亿VIP精品文档

相关文档