所在的位置: c++ >> 基本简介 >> C程序调试

C程序调试

通常软件开发中,很难有工程师能够一次性写出正确无误的程序代码。而程序调试以及测试步骤将会在整个软件开发过程中占据相当大的份量。本章开始主要介绍Linux系统下C++应用程序调试工具的使用情况。重点以Linux系统下gdb调试工具使用介绍,配合实际C++应用程序调试实例作详细讲述。让初学者在学习Linux下C++应用程序开发之前,首先掌握基本的程序调试手段。

1.调试工具说明

对于经常在Windows平台进行应用程序开发的开发者来讲,往往并不需要太过在意相应的调试工具的命令使用。因为Windows这类图形化平台为开发者提供了可视化开发工具。开发者只需要根据提供的图形化调试功能选项,即可轻松完成当前应用程序的调试工作。

但是对于Unix以及Linux这类操作系统来讲,则没有那么的幸运。凡是在该平台编辑的应用程序在程序编译的时候,需要采用操作系统提供的调试工具来实现命令行方式的调试应用。各类商用的Unix根据不同的厂家提供的调试工具并不一致,如Unix主机常用dbx调试工具、GNU提供的gdb等。但是对于Linux操作系统,通常默认支持GNU提供的gdb调试工具。本章主要介绍在Linux系统下gdb调试工具的具体使用。

Linux系统下的gdb调试工具是GNU组织下的一个受通用公共许可证保护的自由软件。相比于其它平台的调试工具,gdb提供了比较完备的应用程序调试功能。在gdb工具中,可以让开发的应用程序运行到指定的位置,可以查看指定位置的相关变量、堆栈等信息。并且该工具支持大量的计算机语言调试。本章主要以C++语言程序作为调试对象。

Linux系统下的gdb调试工具为开发者调试应用程序提供了比较完备的调试功能。在详细了解该工具的使用之前,首先通过一些该工具的简单操作以及相应的简单实例的调试,帮助大家对gdb调试工具有一个初步的认识。

2.gdb工具基本操作

对于软件开发中的程序调试,一般在程序员开发的应用程序时大致有如下几个步骤。

1)第一类,通过编译器编译程序产生的错误称为语法类错误;

2)第二类则是指应用程序编译通过并生成可执行程序,但执行时并没有按照要求得到正确结果的错误;

3)还有因为程序内部隐含的特定条件下的处理错误而引起程序core的现象,该类错误一般会产生相应的core文件便于调试。

Linux下针对第一种应用程序语法类错误的解决方法,是开发者根据编译器给出的错误提示进行代码修改。这类代码往往违反编译器语法规定。但是面对隐含性错误以及应用程序core的情况,则需要专业的调试工具来实现单步跟踪调试,此时gdb正是派上用场的时候。1)启动gdb

[developer

localhostdeveloper]$gdb//在shell下执行gdb启动程序命令GNUgdbRedHatLinux(5.3post-0..18rh)//以下为gdb工具启动信息CopyrightFreeSoftwareFoundation,Inc.GDBisfreesoftware,coveredbytheGNUGeneralPublicLicense,andyouarewel







































白癜风软膏能不能治白癜风
中科医院专家



转载请注明:http://www.nydjfy.com/jbjj/1455.html