一.1 gdb
一.1.1 gdb 概述
无论多么优秀的程序员,必须经常面对的一个问题就是调试。当程序编译完成后,他
可能无法正常运行;或许程序会彻底崩溃;或许只是不能正常地运行某些功能;或许它的
输出会被挂起;或许不会提示要求正常的输入。无论在何种情况下,跟踪这些问题,特别
是在大的工程中,将是开发中最困难的部分,本章将介绍使用 调试
程序的方法,该程序是一个调试器,是用来帮助程序员寻找程序中的错误的软件。
是 开发组织发布的一个强大的 下的程序调试工具。或许,有
人比较习惯图形界面方式的,像 、 等 环境,但是在 平台下做软
件, 这个调试工具有比 、 的图形化调试器更强大的功能。所谓“寸有所长,尺
有所短”就是这个道理。
一般来说, 主要帮忙用户完成下面 个方面的功能:
启动程序,可以按照用户自定义的要求随心所欲的运行程序。
可让被调试的程序在用户所指定的调试的断点处停住 断点可以是条件表达式。
当程序停住时,可以检查此时程序中所发生的事。
动态地改变程序的执行环境。
从上面来看,gdb 和一般的调试工具区别不大,基本上也是完成这些功能,不过在细
节上,会发现 gdb 这个调试工具的强大。大家可能习惯了图形化的调试工具,但有时候,
命令行的调试工具却有着图形化工具所不能完成的功能。下面通过实例进行说明。
!"#
$
%
&'()*
$ '(**++
%
&+'*
,
&*
,
&-
%
*
'(*
$ '.*'.((*++
%
+'*
,