- 1、本文档共72页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
事上那些最容易的事情中,拖延时间最不费力! 高级语言程序设计 主讲教师:贾彩燕 计算机与信息技术学院 计算机科学与技术系 cyjia@bjtu.edu.cn 第五章C程序结构 主要内容 数值类型 函数和标准库函数 函数定义和程序的函数分解 C程序结构与变量 预处理命令 定义常量 字位运算符 编程实例 知识回顾及提升 最重要的思想 模块化程序设计思想 函数分解及其思想 C程序的组成 对象(变量、函数)的存在、声明与使用 变量的生命周期和作用域 复杂问题分解与问题解决 解决问题的办法:化整为零,把复杂程序分解成不同的小模块,分别实现。 模块化程序设计思想 高级语言常见的抽象机制 子程序,sub-program, sub-routine 过程,procedure 函数,function 类,class 包,package 模块,module 组件,component 程序,program 函数说明规范:接口说明 C的模块和C程序结构 一组函数构成一个函数模块; 在C程序里,一个*.c或*.cpp文件就是由多个函数构成的一个功能模块; 每个功能模块编译后构成一个独立的目标模块*.obj 多个目标模块绑定在一起构成一个*.exe文件 变量的作用域与存在期 变量定义 确定了变量何处、何时能使用 何处能使用?作用域 能够使用变量的范围—代码段 何时能使用?存在期 确定变量建立和销毁时间—时间段。 各种变量的存在期可能不同。 变量实现的基础是内存单元,存在期就是变量被分配内存空间到撤消的期间 存储区示意图 存储区用途 静态存储区主要用途 保存采用静态分配方式的变量的内容 外部变量(全局变量) 静态内部变量 保存程序中的字符串常量 动态存储主要用途 供自动型内部变量的空间分配使用 供显式动态分配的存储空间分配(见后续内容) 变量类别及其存在期 内部变量的类别 auto—默认的内部变量类别,可以不用写,存储单元在运行过程中动态分配和释放 static—静态内部变量,保存在静态存储区,存储单元在程序启动时分配,程序结束时释放。 外部变量 在函数之外定义的变量称为外部变量、全局变量。External variable 全部保存静态存储区,程序启动时分配,程序结束时释放。 在外部变量前加static只影响对应变量的可见范围,但不影响变量的生命周期。 函数中的参数 形式参数和实际参数 formal argument—形式参数 定义函数时给出的参数,称为形式参数 Arguments occurred in function list when defining a function actual argument—实际参数 调用函数时给出的参数,称为实际参数 Arguments occurred in function list when calling a function C函数的参数是值参数。 函数调用时先计算实参表达式的值 把值复制给对应形参 而后执行函数体。 函数内对形参的操作与实参无关。 C语言的函数原型—函数存在信息 函数原型—function prototype 声明某一个函数的存在 在使用某个函数以前,用函数原型来声明某个函数已经是一个合法的、有定义的函数,请声明之后的代码放心使用该函数。 Use function prototype to declare the existence of a function 原型说明的形式 与函数头部类似,加分号; 参数名可省略,可与函数定义用的名字不同; 原型的参数名最好用有意义的名字,有利于写注释。 提倡把原型说明都放在程序文件最前面 另外一种组织写函数原型办法 将自己写的所有的函数的函数原型都写在一起,组织成一个扩展名为.h的header file,即头文件,如abc.h 然后在.c或.cpp程序模块的首部用文件包含命令包含该头文件,如 #include “abc.h” 思考:有什么好处? 主要内容 数值类型 函数和标准库函数 函数定义和程序的函数分解 C程序结构与变量 预处理命令 定义常量 字位运算符 编程实例 预处理命令 C源程序中以字符#开始的命令即为预处理命令 常见的预处理命令包括 #include #define #undef #if #else #elif #endif 主要内容 数值类型 函数和标准库函数 函数定义和程序的函数分解 C程序结构与变量 预处理命令 定义常量 字位运算符 编程实例 主要内容 数值类型 函数和标准库函数 函数定义和程序的函数分解 C程序结构与变量 预处理命令 定义常量 字位运算符 编程实例 掩码的概念 掩码(mask) 为做位运算而构造的二进制串。 例如 通过将掩码与运算对象进行位运算,获取运算对象的某位的状态,而将其它不关心的位屏蔽掉。 若想在设
您可能关注的文档
- (教科版)三年级语文上册课件1_拐弯儿处的回头.ppt
- (整数值)随机数的产生.ppt
- chapter8进程的互斥同步通信与死锁5.ppt
- ChildrenLinguistic儿童语言发展.ppt
- (新人教)七上第3.1.1一元一次方程(课件).ppt
- (新课标)高中数学《2.2.1双曲线及其标准方程》课件 新人教A版选修1-1.ppt
- (新改)考前作文备考指导.ppt
- CIS作业展示第六组.ppt
- (新课程)高中数学二轮复习精选《必考问题18统计及其与概率的交汇问题》课件新人教版.ppt
- cp07小学儿童的心理发展-品德.ppt
- 书面表达之建议信(讲义)-中考英语一轮复习(含答案).pdf
- 中考历史复习小众题型类:填空题、改错题、判断题(70题).pdf
- 2024年吉林省县乡教师选调考试《教育学》真题汇编带解析必背【基础题】.pdf
- 2025年中考语文备考之《朝花夕拾》名著导读及考题.pdf
- 小说标题的含义和作用(模拟突破)-2025年中考语文考点突破之小说阅读(解析版).pdf
- 阅读理解之应用文(练习)-中考英语一轮复习(含答案).pdf
- 小说情节作用(模拟突破)-2025年中考语文考点突破之小说阅读(原卷版).pdf
- 小说段落作用(模拟突破)-2025年中考语文考点突破之小说阅读(解析版).pdf
- 小说段落作用(试题专练)-2025年中考语文考点突破之小说阅读(解析版).pdf
- 2025年上海市16区初三语文一模试题汇编之现代文阅读二(记叙文)学生版.pdf
文档评论(0)