潢川微信网站建设,做网站公司yuanmus,素材网站 源码,深圳网站制作 公司简介GDB是GCC的调试工具。其功能如下#xff1a;启动程序#xff0c;使程序按自定义形式运行#xff1b;使程序停止指定断点位置#xff1b;程序停止后#xff0c;检查程序执行中的相应情况#xff1b;动态改变程序执行环境。gdb调试能进行GDB调试#xff0c;一般在编译… 简介GDB是GCC的调试工具。其功能如下启动程序使程序按自定义形式运行使程序停止指定断点位置程序停止后检查程序执行中的相应情况动态改变程序执行环境。gdb调试能进行GDB调试一般在编译过程中需使用-g参数。如果不使用-g参数则在gdb调试过程中将不能得到程序的函数名、变量名等信息而只能看见运行时内存地址。举例如下启动gdb调试的方法有以下三种常用的调试有以下几种b // 停在程序的指定一行b // 停在程序的某个函数处b * // 停在编译器生成的prolog代码处。主要用于汇编调试b * // 停在代码的某个地址处d // 删除断点info b // 查看断点r运行被调试的程序。如果之前没有设过断点则执行完整个程序如果设过断点则程序停在第一个断点处。c继续执行被调试程序直到到下一个断点或程序整体结束。b设置断点包括以下几种s执行一行源程序的代码如果此行代码中存在函数调用则进入该函数。n执行一行源程序的代码此代码中的函数调用执行完成。si类似于s命令不同的是si针对的是汇编指令而s针对的是源代码。ni类似于n命令不同的是ni针对的也是汇编指令而n针对的是源代码。p/print打印指定变量(临时变量和全局变量)、字符串、表达式等值。display …设置程序中断后想显示的数据及其格式。如希望程序中断后显示即将被执行的下一条汇编指令可使用如下命令display /i undisplay 取消先前的display设置编号从1开始递增。i/info显示各类信息。q退出gdb调试环境。help [命令名称]gdb帮助命令提供对GDB各种命令的解释说明。如果指定了“命令名称”参数则显示该命令的详细说明若果没有指定参数则分类显示所有GDB命令共用户进一步浏览和查询。cd dir运行GDB使用dir作为gdb的工作目录。se File从File读取符号表并把它作为可执行文件。-write开通enable往可执行文件和核心文件写的权限。clear删除一个断点这个命令需指定代行或者函数名。set设置变量的值。如set val 2即为把2保存到val变量中设置输入参数使用set args a b c(a,b,c分别为对应输入参数)。watch监视一个变量的值不管它何时被改变。rwatch指定一个变量如果这个变量被读则暂停程序运行在调试器中显示信息并等待下一个命令调试。Ctrl c在当前位置停止执行正在执行的程序断点在当前行。ptype显示变量的类型return强制从当前函数返回。whatis显示变量的值和类型。xbreak在当前函数的退出的点上设置一个断点。load动态加载一个可执行文件到调试器。ignore忽略某个断点指定的次数。finish继续执行直到当前函数返回。disable禁止断点功能这个命令需要禁止的断点在断点列表索引值作为参数。bt显示程序堆栈信息。ll相当于list从第一行开始列出源码。gdb filename // 其中filename为可执行文件名gdb filename core // core是程序core dump产生的文件产生core文件需设置栈大小无线使用ulimit -c unlimitedgdb filename PID // PID一般是服务程序运行时的进程IDgcc test.c -o test -gg test.cpp -o test -g这个是学校的电脑测试的,实在太饿了.我没有写完就截图一张.