跳到主要内容

lldb(gdb)常用的控制台调试命令?

参考答案:

LLDB(Low Level Debugger)和GDB(GNU Debugger)都是常用的调试工具,它们各自具有一套丰富的调试命令。以下是一些常用的控制台调试命令:

GDB常用命令:

  1. 启动/退出

    • runr:启动程序。
    • quitq:退出调试器。
  2. 程序执行

    • continuec:继续执行程序,直到遇到断点或程序结束。
    • step:单步执行,进入函数调用。
    • next:单步执行,不进入函数调用。
  3. 断点管理

    • breakb:设置断点。例如,b 16 在第16行设置断点,b func 在函数func的入口设置断点。
    • delete breakpoints:删除断点。
    • disable breakpoints:禁用断点。
    • enable breakpoints:启用断点。
  4. 变量查看与操作

    • printp:打印变量值。
    • set variable:设置变量值。
  5. 查看堆栈信息

    • backtracebt:打印当前堆栈信息。
  6. 其他

    • info threads:打印线程信息。
    • args:查看或设置程序启动时的参数。

LLDB常用命令:

  1. 启动

    • file xxxx:加载需要调试的可执行文件。
    • run:启动程序。
  2. 单步执行

    • s:单步执行,进入函数调用。
    • si:单指令执行。
    • n:单步执行,但不进入子函数。
  3. 断点

    • breakpoint set -n functionname:用函数名称设置断点。
    • breakpoint set -f filename -l linenumber:在文件的指定行设置断点。
    • breakpoint delete:删除断点。
  4. 查看信息

    • frame selectf:选择堆栈帧。
    • register readre r:查看寄存器信息。
    • memory read:查看内存信息。
    • expr:计算表达式的值。
  5. 其他

    • c:继续执行程序,直到遇到断点或程序结束。
    • disassembledis:反汇编代码。

请注意,这些命令只是GDB和LLDB功能的一部分,它们还提供了许多其他功能和命令,可以根据具体需求进行学习和使用。同时,不同的调试器可能在命令的具体语法和选项上有所不同,因此建议查阅官方文档或相关教程以获取更详细和准确的信息。