用于记录日常调试用到的方法,而不是简单的命令说明
首先还是先将用过的命令列出
命令:缩写:说明
run:r:执行程序
break:b:设置断点
print:p:打印变量内容
next:n:执行到下一条语句
step:s:进入函数执行(gdb官方说法是Step program until it reaches a different source line.)
continue:c:继续执行
backtrace:bt:打印调用堆栈
frame:f:显示当前堆栈信息
finish::完成当前函数的执行(gdb手册的官方说法是Execute until selected stack frame returns.此处的函数为通俗说法)
examine:x:打印内存内容
until:u:完成当前循环的(不过在很多情况下并非如此,gdb手册的官方说法是Execute until the program reaches a source line greater than the current or a specified location (same args as break command) within the current frame.)
jump:j:跳到指定的位置执行
常用的手段
1、重定向。run 0<input.file 1>output.file或者set args 0<input.file 1>output.file
2、重复执行代码(在同一函数内)。b line_number \n j line_number\n
3、打印内存。x/8xb address,以16进制方式打印8个字节
时间: 2024-11-03 01:20:10