zoukankan      html  css  js  c++  java
  • [linux]gdb调试

    使用gdb可以在命令行方便地调试,并且能以命令程序的方式调试源代码。

    常用命令简写print-p,step-s,next-n

    进入gdb

    //方式一
    gdb test//test 为可执行文件,使用-g编译得到
    //方式二
    gdb -q //不显示版权信息
    file test //file命令打开文件

    退出gdb

    quit //退出命令

    显示源代码

    list//显示最初10行
    list get_sum//显示函数
    list 5,10//显示5到10行
    list//再次用list,显示接下来11~20行
    list test.c:get_sum//多文件工程时,显示test.c的函数

    查找

    search 字符串//向后查找第一个匹配字符串
    reverse-search 字符串//向前查找

    设置断点

    break 7 //在第7行设置断点
    break get_sum //在函数设置断点
    break 7 if i==2 //根据条件设置断点
    watch i //对变量设置断点,当变量变化时暂停运行
    
    watch i if i==0 //watch后面可以添加条件语句

    查看变量值和类型

    print i //查看变量i的值
    whatis i+get_sum //查看变量或者表达式的类型
    p *p@len //打印长度为len 的数组,p为指向数组头地址的指针。
                    //如果p不是指针而是数组名,则直接p 数组名即可

    运行控制

    run //运行
    continue //继续运行
    next //执行下一条语句,函数当做一条语句
    step //单步,遇到函数则进入函数

    断点管理

    info breakpoints //查看当前所有断点
    disable 断点编号//使断点无效
    enable 断点编号//断点有效
    clear 断点编号//取消断点

    改变变量值

    set variable i = 0 //设置变量值
  • 相关阅读:
    Appium元素定位方式
    Selenium和Appium的关系
    再生龙备份恢复
    删除CentOS更新后的旧内核
    文字识别网站https://ocr.space/
    kubeasz部署高可用kubernetes1.17.2 并实现traefik2.1.2部署 亲测可用
    docker之Dockerfile实践用dockerfile构建nginx环境
    WordPress如何设置先登录再进入主页
    docker 容器使用 systemctl 命令是报错
    bilibili
  • 原文地址:https://www.cnblogs.com/iyjhabc/p/3163649.html
Copyright © 2011-2022 走看看