• GDB调试命令总结


    GDB的功能

    1.启动被调试程序

    2.让被调试的程序在指定位置停住

    3.当程序停住的时候,可以检查程序状态,变量值

    用法:

      gcc -g test.c -o test

      gdb

    命令:

    • 查看源代码

        list/l 空 or 行号 or 函数名 

      

    • 直接enter,重复执行上一命令
    • run/r  运行至下一个断点停下来 or 如果没有断点,直接运行结束
    • start   运行进入主函数(main())停下来
    • .断点

        1)     设置断点

                 break/b----行号 or 函数名 [if condition 命中条件]

        2)     info break/b 查看断点信息

        3)     调试

               next/n  单步执行,不进入函数

               step/s  单步执行,进入函数

    • continue/c   继续执行,在下一断点处停下
    • finish     结束当前函数的运行
    • 清除断点

        清除所有断点 clear

        清除某个模块的断点    clear filename

        清除某个函数中的断点       clear function

        清除某行断点       clear 行号

        delete 断点编号

    • disable 断点编号              使某个断点失效
    • enable 断点编号        使某个断点有效
    • display 表达式           每当程序运行至断点都会显示
    • watch 表达式             设置观察点
    • whatis 表达式            显示某个表达式的数据类型
    •  查看变量 or表达式的值

        print/p 表达式           显示某个表达式的值

        p *array@len             显示一个动态数组array

        输出格式:p/x i

    x

    16进制

    d

    10进制

    u

    无符号19进制

    o

    8进制

    t

    2进制

    a

    16进制

    c

    字符表示

    f

    浮点表示

    • 堆栈相关命令

    backtrace/bt                   查看堆栈情况

    info register                    查看寄存器(除了浮点寄存器)

    info all register               查看所有的寄存器

    info stack                         查看堆栈使用情况

    info args                          查看函数的参数以及其值

    info locals                        查看函数的所有局部变量

    info catch                        查看函数抛出的异常

    • 调试运行环境相关命令

    set args arg1 arg2         设置运行参数

    show args                       显示运行参数

    set width num                设置GDB显示行宽

    return <返回值>             改变程序流程,直接结束当前函数并指定值返回

  • 相关阅读:
    SpringBoot入门之基于Druid配置Mybatis多数据源
    SpringBoot入门之集成Druid
    vs2010 使用vs online账号 需要安装的插件
    正则表达式排除某些字符串的单词
    sqlserver 生成UUID随机码
    常用的sql脚本 游标遍历操作
    Code First 中使用 ForeignKey指定外键时总是显示未引用
    asp.net 的page 基类页面 做一些判断 可以定义一个基类页面 继承Page类 然后重写OnPreLoad事件
    DropDownList 获取不了选择的值 这种错误
    sqlserver几个好用的表值函数和标量函数
  • 原文地址:https://www.cnblogs.com/SimonKly/p/7465492.html
Copyright © 2020-2023  润新知