第4章函数与预处理详解.pptx

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第4章函数与预处理详解

第 四 章 函数与预处理;第四章 函数与编译预处理;C/C++ 源程序结构;模块划分 像组织机构一样,要做到:分工有序、各司其职 按功能划分函数 —— 分治策略(分解 + 求解) 大问题→小问题→更小问题→... →可简单求解:函数 层层分解:自顶向下、从整体到局部、从大到小;函数(function) 源程序的组成单位 —— 函数 一个cpp:由若干个函数组成 主函数: main(),程序入口 其他函数:自编函数 + 库函数 函数调用:主函数不能被调用,可调用其他 程序结束:主函数开始 → 主函数结束 库函数 VC++ 提供的、已编写好的函数,放在库中 用户(我们)可以直接调用,不必重复编写 自编函数 我们自己编写的函数 —— 我们的任务!;定义函数 编写函数功能,函数的实现 返回值类型 函数名( 形式参数 ) { // 函数体开始 ... ; // 若干语句,一般不超过50行 } // 函数体结束 【例】求两个整数中的最大值 int myMax( int x, int y ) // 多个参数用逗号分隔 { int m = xy ? x : y ; return m; // m 类型:int } ;先定义,后使用(调用) 函数名( 实参 ) 实参:常量、变量、表达式均可;定义函数;函数定义的位置和顺序:C++ 没有规定,但要满足 先定义、后使用(调用) —— 编译器从上到下逐句编译,未定义的使用:语法错 什么情况下,函数必须提前说明(声明) 先调用、后定义 例如 main 在其他函数前面 在调用某函数前,用它的函数原型声明 理由 —— 告诉编译器:该函数名及特征 函数定义 = 函数头 + 函数体 函数原型 ≈ 函数头: void ShowMax( int m, int n ); // 后面有分号 参数变量名 m , n 可省略 void ShowMax( int , int );;参数的传递方式 ;函数无返回值 return ; // 可以省略 函数的最后一条语句执行完毕后终止,返回到调用处,程序从调用处继续执行 函数有返回值 必须用 return 语句返回值到调用处,语法: return 表达式 ; 一个函数只能有一个返回值(不能返回多个值) 函数是如何将值返回给调用处的? 自动创建一个临时变量保存值,将其返回给调用处;【例】求10~1000内所有 x,满足: x, x2, x3 都是回文数 正反读都一样;例:函数设计与使用;形参可有默认值 给形参指定值 默认值 ,函数调用时实参可省略 用默认值 void showArea( float length=1.0, float width=2.0 ); void main() { showArea( ); // 缺2个实参 showArea(10.); // 缺1个实参 showArea(20.0, 3.5); // 覆盖形参缺省值 } void showArea( float length, float width ) { coutarea=length*widthendl; };形参的默认值;引用 ( reference ) 给一个变量已定义取别名 允许多个别名 变量类型 变量别名 变量名 操作引用:就是操作被引用的变量 定义引用:必须指明被引用的变量 初始化 int x, y, z = x; // 变量x的别名z y = 200; z = y; // z 就是 x z = y; // ERROR int z = y; // ERROR 参数传递:单向传值、引用实现双向传递;引用作为形参;局部变量 绝大多数情况使用 生存期(诞生 → 死亡) 诞生:占有内存单元,定义/创建变量时 死亡:内存中不存在,定义它的语句块{...} 执行完毕 作用域(可见性) 变量在内存中存在,但并非谁都能用它 在定义它的 {...} 内能使用它 其外面,它已经死亡 操作系统把它从内存删除了 简单例子:;void main( ) { int s; // 创建:开内存空间 for( int i=0; i10; i++) { s += i; cout i; } cout s; //cout i; //error };全局变量 生存期 定义:任何函数体包括main() { ... } 外面的任何位置 诞生:本程序开始运行时,并非在

文档评论(0)

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

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

版权声明书
用户编号:8133070117000003

1亿VIP精品文档

相关文档