前言
gdb(GNU调试器)是一个强大的命令行调试工具,用于调试C和C++程序。
正文
以下是一些在gdb实战中最常用的指令:
-
启动和配置
gdb [executable]- 启动gdb并加载可执行文件。set args [arguments]- 设置传递给程序的命令行参数。
-
执行控制
run(r) - 运行程序直到它正常终止或遇到断点。continue(c) - 从暂停状态继续执行程序。可以从断点A跳转到断点B。next(n) - 执行下一行代码,不进入函数调用。step(s) - 执行下一行代码,如果遇到函数调用则进入函数内部。finish- 继续执行直到当前函数返回。
-
断点管理
break [function](b) - 在函数开始处设置断点。break [filename:]lineno(b) - 在指定文件的指定行上设置断点。info breakpoints(i b) - 显示所有已设置的断点。delete [number](d) - 删除特定断点。
-
检查状态
print [expression](p) - 打印表达式的值。info registers(i r) - 显示寄存器的内容。backtrace(bt) - 显示调用堆栈。
-
内存和数据操作
x /format address- 检查内存地址的内容。set variable var = value- 设置变量的值。
-
其他
quit(q) - 退出gdb。help [command]- 显示有关命令的帮助信息。list(l) - 显示源代码。where- 显示当前位置的函数调用信息。
总结
在使用gdb进行调试时,熟练掌握这些基本指令将极大地提高效率。

5509

被折叠的 条评论
为什么被折叠?



