lldb(gdb)常用的控制台调试命令?
参考答案:
LLDB(Low Level Debugger)和GDB(GNU Debugger)都是常用的调试工具,它们各自具有一套丰富的调试命令。以下是一些常用的控制台调试命令:
GDB常用命令:
-
启动/退出:
run
或r
:启动程序。quit
或q
:退出调试器。
-
程序执行:
continue
或c
:继续执行程序,直到遇到断点或程序结束。step
:单步执行,进入函数调用。next
:单步执行,不进入函数调用。
-
断点管理:
break
或b
:设置断点。例如,b 16
在第16行设置断点,b func
在函数func
的入口设置断点。delete breakpoints
:删除断点。disable breakpoints
:禁用断点。enable breakpoints
:启用断点。
-
变量查看与操作:
print
或p
:打印变量值。set variable
:设置变量值。
-
查看堆栈信息:
backtrace
或bt
:打印当前堆栈信息。
-
其他:
info threads
:打印线程信息。args
:查看或设置程序启动时的参数。
LLDB常用命令:
-
启动:
file xxxx
:加载需要调试的可执行文件。run
:启动程序。
-
单步执行:
s
:单步执行,进入函数调用。si
:单指令执行。n
:单步执行,但不进入子函数。
-
断点:
breakpoint set -n functionname
:用函数名称设置断点。breakpoint set -f filename -l linenumber
:在文件的指定行设置断点。breakpoint delete
:删除断点。
-
查看信息:
frame select
或f
:选择堆栈帧。register read
或re r
:查看寄存器信息。memory read
:查看内存信息。expr
:计算表达式的值。
-
其他:
c
:继续执行程序,直到遇到断点或程序结束。disassemble
或dis
:反汇编代码。
请注意,这些命令只是GDB和LLDB功能的一部分,它们还提供了许多其他功能和命令,可以根据具体需求进行学习和使用。同时,不同的调试器可能在命令的具体语法和选项上有所不同,因此建议查阅官方文档或相关教程以获取更详细和准确的信息。