- 1
- 0
- 约 41页
- 2017-06-06 发布于山西
- 举报
第6章函数演示稿件
第6章 函数 C++的函数 一个C++程序无论大小,都是由一个或多个“函数”组成,由“函数”决定要做的实际操作。 (2)函数原型 函数原型是对函数的引用性声明。 引入函数原型后,C++要求的对函数“先定义,后使用”, 变成了“先声明,后使用”,即在程序中的出现顺序为:先函数原型,后函数调用,最后才是函数定义。 函数原型将函数的声明和使用分离开来,使程序的书写格式结构清楚,重点突出,便于安排。 在程序中以任何方式对函数的使用都称为函数调用。函数可以以表达式语句的形式调用,可以被其它函数嵌套调用,也可以作为另一个函数的参数被调用。 函数调用的一般形式为: 函数名(实参1,实参2,…,实参n)。 6. 2. 2.函数的传值调用 6. 2. 3.函数的传址调用传址调用: 指针作函数参数 例6.6 交换两个整数变量的值。 #includeiostream.h void exch(int *x, int *y) { int z; z=*x; *x=*y; *y=z; } 3.引用的概念和用法 引用是通过变量存储地址访问变量的一种语法机制。(1) 引用类型C++语言通过取地址运算符“”引入了一种新的数据类型—“引用类型”。引用类型定义格式如下: 类型 变量,或:类型 变量。 一个引用类型的变量,简称为一个引用;格式中“类型”称为引用的基类型。如int 是对int 类型的引用类型,float 是对float 类型的引用类型。 引用定义与指针定义格式是十分相似的。本质上,指针是地址变量,而引用一旦定义后其地址是固定的,变化的只是该地址中的内容。 C++中所有数组都是自动按引用传递。矩阵(数组)形参前加上const修饰符,使用数组调用按值传递,数组中任何元素都不能在函数体中改变。 传址调用: 引用针作函数参数 例6.9 交换两个整数变量的值。 #includeiostream.h void exch(int x, int y){ int z; z=x; x=y; y=z; } (5)指向函数的指针1. 函数指针的定义和使用 例6.12 用函数指针调用函数 例6.13 用函数指针数组驱动的菜单程序 2. 函数指针作为函数参数 例6.14 回调函数 (6)变量的存储类别和标识符的作用域1.变量的存储类别 程序执行时所需要的内存空间 动态变量 全局变量和局部变量 全局变量和局部变量 全局变量和局部变量 2 局部变量及存储方式 例6.15 局部变量的作用范围 3 全局变量的存储方式 4.内部静态变量和外部静态变量 例6.16全局变量和静态变量 一个变量前面加上extern关键字,说明该变量不是在当前块中定义,而是在本文件中当前块以外的部分,或者甚至是在其它文件中定义。所以extern关键字是对外部变量的引用性声明。关键字extern可以放在函数内,也可以放在函数外。可以认为extern起到了扩大变量作用域的效果(从extern声明处开始一直到文件末为止)。 例6.17 extern的作用 面向对象程序设计:一种新的思维方法,更接近人类处理现实世界问题的自然表示方法。 假设你面对现实世界的一个对象,你不会把它的属性和处理方法分开,程序设计也是一样 面向对象的语言有:C++,smalltalk,VB,Java等 在程序运行中动态地建立及撤消的变量统称动态变量。从物理实现机制上看,动态变量分为动态存储器变量和寄存器变量两种。 用关键字auto说明的动态变量是自动变量,即动态存储器变量。 寄存器变量数量有限,它们不占用内存,访问速度快。除了用关键字register显式说明的寄存器变量外,通常编译程序将循环变量作为寄存器变量处理,以利于优化程序,提高运行效率。 变量按其在程序中作用的范围,分为全局变量和局部变量。全局变量是指在程序代码开始执行前分配的变量,它在程序的整个运行过程中都起作用,用静态数据区存储;局部变量是指在程序内部定义的变量,它只在程序内部起作用,用动态数据区存储。C++规定程序中函数的参数也是局部变量。局部变量的缺省存储类型是auto。 全局变量在静态存储区中分配,到程序执行完毕时才释放,在程序执行过程中,它们占用固定的存储单元而不是动态分配和释放的单元,它的存在时间为整个程序运行时间;动态存储区中存放的数据在函数调用开始时分配动态存储空间,函数调用结束时释放这些存储空间。因此,局部变量的存在时间为函数的调用时间。在程序的执行过程中,这种分配和释放是动态的。一般来说,在一函数中两次调用同一函数,分配给函数中局部变量的存储空间往
您可能关注的文档
- 第05章学习迁移演示稿件.ppt
- 第11章贸易政策中的争议演示稿件.ppt
- 第11课民族团结演示稿件.ppt
- 第15课_明朝加强中央集权制度中华书局版七下演示稿件.ppt
- 第1章国际贸易概述演示稿件.ppt
- 第1章基础知识演示稿件.ppt
- 第1章彩色电视色度学基础演示稿件.ppt
- 第1章数字电路基础演示稿件.ppt
- 第2章机械制动演示稿件.ppt
- 第2章线性规划演示稿件.ppt
- 2025秋季中国石油数智研究院高校毕业生招聘笔试备考试题附答案解析.docx
- 2025绍兴越城区区属学校聘用制教师招聘42人笔试备考试题附答案解析.docx
- 2025年长春市公安局面向吉林警察学院和吉林司法警官职业学院应届毕业生招聘警务辅助人员参考试题(15.docx
- 2025年舟山医院公开招聘编外人员15人备考试题附答案解析.docx
- 2025年秋季中国石油锦西石化分公司高校毕业生招聘参考试题(辽宁)附答案解析.docx
- 2025年通化市东昌区民政局招聘公益性岗位笔试备考题库(2人)附答案解析.docx
- 2025广东佛山市检察机关招聘劳动合同制司法辅助人员38人笔试参考题库附答案解析.docx
- 2025广东清远市佛冈县水头镇选拔储备村(社区)两委后备人员历年题库附答案解析.docx
- 2025年海南省各级疾控中心校园考核招聘事业编制人员39人笔试试题附答案解析.docx
- 2025重庆丰都县栗子乡人民政府公益岗招聘3人笔试题库附答案解析.docx
原创力文档

文档评论(0)