使用gdb调试注意事项

  1. 编译过程一定要加-g选项:因为在Linux系统下,默认生成的是release(不加调试信息)版本的可执行程序,如果不加-g,则不能调试。例如编译hello.c生成hello的debug版本;
gcc -g hello.c -o hello
  1. 在开启gdb调试不想看到那么一大堆版本信息可以加-q,例如调试hello
gdb -q hello
  1. 常用选项:
    run/r:执行程序到结束
    continue:从当前位置开始连续而非单步执行程序到结束
    breaktrace(或bt):查看各级函数调用及参数
    start:开始单步调试,next/n下一步
    step/s:进入函数,类似于VS里的F11
    finish:执行到当前函数返回,然后停下来等待命令
    使用gdb调试注意事项_第1张图片
    break/b:打断点,可以加行号或者函数
    使用gdb调试注意事项_第2张图片
    delete/d breakpoints/number:删除所有断点/删除断点编号为number的断点
    print/p:打印表达式的值,通过表达式可以修改变量的值或者调用函数 (p 变量:打印变量值。)
    q/ctrl+d:退出gdb

你可能感兴趣的:(OS)