Chinaunix首页 | 论坛 | 博客
  • 博客访问: 103704330
  • 博文数量: 19283
  • 博客积分: 9968
  • 博客等级: 上将
  • 技术积分: 196062
  • 用 户 组: 普通用户
  • 注册时间: 2007-02-07 14:28
文章分类

全部博文(19283)

文章存档

2011年(1)

2009年(125)

2008年(19094)

2007年(63)

分类: C/C++

2008-04-20 17:29:47

作者:   

    二、Turbo C集成调试器

    一旦修改好语法错误之后程序编译就没什么问题了, 但还是可能不按要求运
行, 因为可能有逻辑错误(运行错误)。这种错误跟踪就无助于发现错误位置了。
TC有一个集成调试器可以跟踪运行错误。通过调试器可以运行,  在断点处暂停,
检查变量的值, 甚至可以改变之, 以看程序会有什么反应。
   Turbo C集成调试器是源程序级的调试器, 即用同你编写程序一样的" 语言"
来控制调试器。例如, 为了显示数组中的一个元素的值, 可告诉调试器显示这样
的表达式的值:
Ctrl+F4  Debug/Eavluate            计算表达式, 允许修改变量的值。
         Debug/Find Function       查找函数定义, 显示在编辑窗口中。 仅
                                   在调试时才有效。
Ctrl+F3  Debug/Call Stack          显示调用栈,  可显示任何函数的当前执
                                   行位置, 其方法是在调用栈中选择相应的
                                   函数名。仅在调试时有效。
         Debug/Source Debugging    控制是否允许调试: 置为On时,  集成调
                                       试器和单独调试器均可用 ;   置为
                                        Standalone时, 只能用单独调试器
                                        调试, 虽然还能在TC中运行; 置为
                                        None时, 在.EXE文件不置调试信息,
                                        两种调试均不能调试。
Ctrl+F4  Break/Watch/Add Watch          增加一监视表达式。
         Break/Watch/Delete Watch       删除一监视表达式。
         Break/Watch/Edit               编辑一监视表达式。
         Break/Watch/Remove All         删除所有监视表达式。
           Watches
Ctrl+F8  Break/Watch/Toggle             设置或清除光标所在行的断点。
           Breakpoint
         Break/Watch/Clear              删除程序中所有断点。
           Breakpoint
         Break/Watch/Next               显示下一断点
           Breakpoint
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

               表3. 调试器菜单命令及其热键
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
  热键            菜单命令                           功能
───────────────────────────────────
  F5                                 在整屏和分屏之间放大缩小活动窗口。
Alt+F5                               将显示转到用户屏, 击任意键返回。
  F6                                 在编辑窗口与监视窗口或消息窗口间
                                     切换。
Alt+F6                               若编辑窗口是活动的,  转到最近一次
                                     装入编辑器的文件;  若下面窗口是活
                                     动的, 则在监视窗口和消息窗口间切换。
Ctrl+F9   Run/Run                    调试运行或不调试运行程序,  必要时
                                     编译、连接源文件, 若编译、 连接时
                                     Debug/Source Debuging和O/C/C/OBJ
                                     Debug Information为On, 则运行程序
                                     到断点或程序末尾。
          Project/Remove Messages    删除消息窗口中的内容。
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 
    判断程序是否出错或者为什么出错是编程中最有挑战意义的一方面。这里建
义你进行预防性设计, 具体做法为:
    (1). 将代码写清楚点, 应作适当缩进, 使用文字说明和描述性的变量名。
    (2). 代码应简单, 把精力放在简单语句中的复杂表达式,  而不是一些复杂
语句。Turbo C的代码优化机制将大大提高代码的效率, 而且调试、阅读、 修改
起来容易。
    (3). 尽量用目的简单、好定义的函数构建程序。 这会便于编制调试程序和
分析结果, 而且阅读、修改起来也要容易一些。
    (4). 应尽量减少各个函数要求的数据和改变数据的元素个数。这也会便于
编制测试程序和分析结果; 同样便于阅读、修改程序。并且还限制了出错函数可
能造成的巨大混乱的牵涉面, 便得能在一个调试节中多运行函数几次。
    (5). 要留心编写程序中的公共函数, 或者说在其它程序中可再用的函数。
编写、调试一个一般性的函数通常要比编写、调试两个或更多的特殊函数要容易。 

阅读(515) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~