知识大全 异常处理与程序调试(二)[4]

Posted 断点

篇首语:生活中若没有朋友,就像生活中没有阳光一样。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 异常处理与程序调试(二)[4]相关的知识,希望对你有一定的参考价值。

DELPHI基础教程:异常处理与程序调试(二)[4]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

   程序调试简介

  Delphi提供了一个功能强大的内置调试器(Integrated Debugger) 因而对程序的调试不用离开集成开发环境(IDE)就可以进行

  程序错误基本可以分为两类 即运行时间错和逻辑错 所谓运行时间错是指程序能正常编译但在运行时出错 逻辑错是指程序设计和实现上的错误 程序语句是合法的 并顺利执行了 但执行结果却不是所希望的

  对于这两类错误 调试器都可以帮助你快速定位错误 并通过对程序运行的跟踪和对变量值的监视帮助你寻找错误的真正原因和解决错误的途径

  程序调试的主要内容可以概括为如下的几方面

   调试的准备和开始

   控制程序的执行

   断点的使用

   检查数据的值

  程序调试只有用户实际上机操作才能真正掌握 在这一节中我们主要对调试中的主要问题和一些关键点进行介绍 至于一些很细小的问题相信读者可以在上机实际应用中掌握 因而没有列出

   调试的准备和开始

  在程序开发过程中程序编码和调试是一个持续的循环过程 只有在你对程序进行了彻底的测试后才能交付最终用户使用 为了保证调试的彻底性 在调试前应制定一个详细的调试计划 一般说来应该把程序划分为几个相对独立的部分 分别进行调试 以利于错误的迅速定位 确保每一部分程序都按设计的要求运行

  调试计划准备好后就可以开始程序的调试

  开始一个调试过程包括

   编译时产生调试信息

   从Delphi里运行你的程序

  在程序调试过程中 程序的执行完全在你的控制之中 你可以在任何位置暂停程序的执行去检查变量和数据结构的值 去显示函数调用序列 去修改程序中变量的值以便观察不同值对程序行为的影响

   产生调试信息

  要使用内部调试器必须选中Option| Environment菜单References页的Integrated Debugging检查框 缺省情况下该框被选中

  在开始调试前需要使用Symbols Debug Information(调试符号信息)编译工程文件 调试符号信息包含了一个符号表 能够使调试器在程序的源代码与编译器产生的机器代码间建立联系 这样在程序执行中可以同时查看对应的源代码

  Delphi 在缺省情况下自动产生调试符号信息 在集成开发环境中的开关选项是Option|project菜单Compiler Options页的Debug Information and Local Symbols检查框

  当产生的调试符号信息供内部调试器使用时 编译器把调试符号表储存在每个相应的 dcu文件中

  如果希望在集成环境外使用Turbo Debugger 则需要把调试信息储存在最终的 exe文件中 为此需要选定Option|Project菜单Linker页的Include TDW Debug Info检查框

  由于储存调试信息大大增加了执行文件的大小 因而调试完成后应重新生成一个不包含调试信息的执行文件

   运行程序

  通过调试器(包括内置调试器)运行程序 当程序处于等待状态时 调试器可以获得控制 利用调试器的功能来检查当前程序的状态 通过合理布置屏幕显示 使应用程序运行窗口和Code Editor(代码编辑器)互不重叠 可以让用户在它们间方便地切换以观察代码执行的效果

  如果希望使用命令行参数来调试程序 则可以通过Run|Parameters 菜单打开运行参数对话框进行设置

   程序运行的控制

  程序运行控制的方法和使用如下表

  表   程序运行控制的方法和使用途径

  ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

  方法 使用途径

  ───────────────────────────────

  运行到光标位置 ● Code Editor加速菜单的Run to Cursor项

  (Run to Cursor) ● Run主菜单的Run to Cursor项

  ● F

  跟踪(Trace Into) ● Run主菜单的Trace Into项

  ● Trace Into加速按钮

  ● F

  步进(Step Over) ● Run主菜单的Step Over项

  ● Step Over加速按钮

  ● F

  运行到断点 设置断点并按正常方式运行

  暂停程序执行 Run主菜单的Program Pause项

  ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

  跟踪和步进都是一种单步执行方式 但 步 的含义不同 对跟踪而言它一次执行一条简单程序语句 当碰到包含调试信息的函数或过程调用时则跳入该函数或过程 并执行其第一条可执行语句 对步进而言它一次执行一条当前模块的可执行语句 而不管该语句是否是函数或过程调用

  运行到光标位置和运行到断点都是程序正常运行到某一确定的源代码位置 而后进入调试状态 但相对于运行到光标位置而言 运行到断点更为灵活 因为断点一次可设置多个 同时也可以对断点设置一定的条件 只有满足该条件程序运行才会中止

  返回目录 DELPHI基础教程

       编辑推荐

       Java程序设计培训视频教程

       J EE高级框架实战培训视频教程

  Visual C++音频/视频技术开发与实战

  Oracle索引技术

  ORACLE G数据库开发优化指南

  Java程序性能优化 让你的Java程序更快 更稳定

  C嵌入式编程设计模式

  Android游戏开发实践指南

cha138/Article/program/Delphi/201311/25187

相关参考

知识大全 异常处理与程序调试(二)[2]

DELPHI基础教程:异常处理与程序调试(二)[2]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

知识大全 异常处理与程序调试(二)[1]

DELPHI基础教程:异常处理与程序调试(二)[1]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

知识大全 异常处理与程序调试(一)[4]

DELPHI基础教程:异常处理与程序调试(一)[4]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

知识大全 异常处理与程序调试(一)[3]

DELPHI基础教程:异常处理与程序调试(一)[3]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

知识大全 异常处理与程序调试(一)[2]

DELPHI基础教程:异常处理与程序调试(一)[2]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

知识大全 异常处理与程序调试(一)[1]

DELPHI基础教程:异常处理与程序调试(一)[1]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

知识大全 异常处理与程序调试(三)[3]

DELPHI基础教程:异常处理与程序调试(三)[3]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

知识大全 异常处理与程序调试(三)[2]

DELPHI基础教程:异常处理与程序调试(三)[2]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

知识大全 异常处理与程序调试(三)[1]

DELPHI基础教程:异常处理与程序调试(三)[1]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

SBR调试程序

(一)活性污泥的培养驯化  SBR反应池去除有机物的机理与普通活性污泥法基本相同,主要大量繁殖的微生物群体降解污水中的有机物。  活性污泥处理系统在正式投产之前的首要工作是培养和驯化活性污泥。活性污泥