- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
第三章控制结构;规定程序单元之间控制流程的机制。
最简单的机制是ALGOL60的分程序。
在程序顺序执行的过程中,遇到一个分程序,就建立一个新的引用环境,并执行这个分程序。
更强的机制允许程序员通过显式调用单元(例如函数和过程),把控制从一个单元转移到另一个单元。;四种单元级控制结构:
显式调用
异常处理
协同程序
并发单元;第三章控制结构;FORTRAN语言的子程序和函数
PASCAL语言的函数和过程
C语言的函数
…
都属于显式调用;每个子程序(函数、过程)都有一个名字,通过名字进行程序单元的调用。
调用语句将控制转向被调用单元,
被调用单元执行完后,又将控制返回主调用单元,并继续执行紧跟在调用语句后面的语句(返回地址)。;显式调用;当控制从调用单元转向被调用单元时,还可进行参数传递。
参数传递可实现单元之间的通信。
单元之间的通信也可以通过全局变量或非局部变量来进行(副作用)。;参数传递
每次调用允许传递不同的数据(实际参数),为单元间的通信提供了灵活性。
也提高了程序的可读性和可修改性。;第三章控制结构;异常:导致程序正常执行中止的事件。
要靠发信号来引发。
用异常条件来表示。
早期语言中除PL/1外,通常没有专门的异常条件及异常处理程序。
后期开发的语言提供了异常处理机制,使涉及异常事件的处理独立出来。
不包括在程序的主流程中,以保证程序的逻辑按基本算法进行。
;有关异常处理的主要问题:
(1)异常如何说明,它的作用域是什么?
(2)异常如何发生?(如何捕获异常)
(3)发生异常时,流程如何转移?
(4)发生异常时,如何绑定相应的异常处理程序?
(5)处理异常之后,控制流程转向何处?
在这些问题中,问题(5)的解决对语言处理异常机制的能力和可使用性有很大的影响。
;语言设计中可能的基本选择是,相应的异常处理程序执行完之后,允许控制返回发生异常事件的执行点。
在这种情况下,异常处理程序可对执行的程序进行“修补”,终止相应的异常事件,以便程序继续正常地执行。
解决了程序继续执行的问题,
但并未真正消除发生异常的因素。
;相应的异常处理程??执行完之后,终止引起异常的程序单元的执行,由异常处理程序进行控制的转移。
意味着引起异常的单元不能恢复执行;从实现的观点来看,这意味着删除异常单元的活动记录。;(异常处理是C++的一个主要特征,
它提出了出错处理更加完美的方法。
设置陷阱抛出异常捕获异常
trythrowcatch;C++的异常处理语句的格式如下:
try{…}
catch(异常类型1){异常1处理程序}
catch(异常类型2){异常2处理程序}
…
catch(异常类型n){异常n处理程序}
您可能关注的文档
- 程序设计语言与编译ppt课件_7.6 LR分析法.pptx
- 程序设计语言与编译ppt课件_4.2.3 文法和语言.pptx
- 程序设计语言与编译ppt课件_4.1 程序设计语言的定义.pptx
- 程序设计语言与编译ppt课件_6.1 词法分析概述+单词的类别+单词的识别.pptx
- 程序设计语言与编译ppt课件_10.1 目标代码生成概述.pptx
- 程序设计语言与编译ppt课件_10.3 寄存器分配.pptx
- 程序设计语言与编译ppt课件_10.2 简单代码生成.pptx
- 程序设计语言与编译ppt课件_8.2 中间代码.pptx
- 程序设计语言与编译ppt课件_8.9 函数的翻译.pptx
- 程序设计语言与编译ppt课件_8.8 for语句的翻译.pptx
最近下载
- 煤矿供电设计与继电保护整定计算示例.pdf VIP
- 脑卒中后言语障碍的康复治疗.ppt VIP
- DG/TJ 08-2451-2024 电动自行车集中充电和停放场所设计标准.pdf VIP
- 2025年版《普通高中课程标准》数学(word文档)完整版.doc VIP
- 绿色建材应用计划与措施.doc VIP
- 2025年下半年扬州大数据集团公开招聘30人考试备考试题及答案解析.docx VIP
- 新高考英语一轮复习练小题刷大题提能力:专题 02 建议信 (应用文写作)(解析版).docx VIP
- [轨道交通 客车电气装置]塞拉门.pdf VIP
- 专题 02 建议信 (应用文写作)-高考英语一轮复习练小题刷大题提能力(原卷版).docx
- 项目九模拟驾驶教学设计---稷山县蔡村初中赵柳晨.docx VIP
原创力文档


文档评论(0)