当前位置: 首页 > news >正文

博罗东莞网站建设企业网站模板观叫湖南岚鸿团队

博罗东莞网站建设,企业网站模板观叫湖南岚鸿团队,贸易公司网站模板,wordpress菜单居右个人主页 : 个人主页 个人专栏 : 《数据结构》 《C语言》《C》《Linux》 文章目录 前言一、前置理解二、使用总结 前言 gdb是Linux中的调试代码的工具 一、前置理解 我们都知道要调试一份代码,这份代码的发布模式必须是debug。那你知道在li…

在这里插入图片描述

个人主页 : 个人主页
个人专栏 : 《数据结构》 《C语言》《C++》《Linux》

文章目录

  • 前言
  • 一、前置理解
  • 二、使用
  • 总结


前言

gdb是Linux中的调试代码的工具


一、前置理解

我们都知道要调试一份代码,这份代码的发布模式必须是debug。那你知道在linux中,我们编译代码默认是什么模式吗?答案是release模式。
在这里插入图片描述
对test.c文件默认生成的a.out可执行程序调试就知道了。
在这里插入图片描述
按q退出调试界面。

那如何更进一步的证明?
我们要先知道一些小知识。

  • 在debug发布时,一定要给可执行程序内部添加debug信息。(debug形成的可执行程序 > release形成的可执行程序)
  • Linux中形成的可执行程序格式:ELF格式
  • 要使用gdb调试,必须在源代码生成二进制程序的时候,加上-g选项
    在这里插入图片描述
    mybin-g文件大小大于mybin-r文件大小

在这里插入图片描述
使用readelf -a 可执行程序 | grep -i debug指令,可以看出mybin-g文件中有debug信息,而mybin-r文件没有
在这里插入图片描述
在这里插入图片描述
mybin-g文件进入调试界面没有(no debugging symbols found)信息显示。

二、使用

  • list / l :显示可执行程序的源码,接着上次的位置往下列,以gdb的格式显示,每次列出10行。
    在这里插入图片描述
    l num(行号):从num行开始显示源代码
    在这里插入图片描述
    l 函数名:列出某个函数的源代码
    在这里插入图片描述

  • break | b 行号:在某一行设置断点
    在这里插入图片描述
    b 函数名:在某个函数开头设置断点
    在这里插入图片描述

  • info break | info b 查看断点信息
    在这里插入图片描述

  • delete breakpoints | d breakpoints:删除所有断点
    在这里插入图片描述
    delete breakpoints n(断点编号) | d n(断点编号):删除序号为n的断点
    在这里插入图片描述
    (注意:断点编号是累计的,退出gdb清空所有断点)
    disable n(断点编号):禁用断点
    在这里插入图片描述
    enable n:启用断点
    在这里插入图片描述


  • run | r:运行程序(类似于VS的F5),遇到断点停止
    在这里插入图片描述
    没有断点在这里插入图片描述
    有断点

  • next | n:单条执行(类似VS的f10)
    在这里插入图片描述

  • step | s:进入函数调用(类似VS的f11)
    在这里插入图片描述

  • finish:执行到当前函数返回,然后停下来等待命令
    在这里插入图片描述

  • until X行号:跳至X行
    在这里插入图片描述

  • p 变量名:打印变量值
    在这里插入图片描述
    set var 变量名 = val:修改变量的值为val
    在这里插入图片描述
    display 变量名:跟踪查看一个变量,每次停下来都显示它的值
    在这里插入图片描述
    undisplay 变量名:取消对先前设置的那些变量的跟踪
    在这里插入图片描述
    breaktrace | bt:查看各级函数调用及参数
    在这里插入图片描述
    info (i)locals:查看当前栈帧局部变量的值
    在这里插入图片描述
    continue | c:从当前位置开始连续而非单步指向程序(从当前断点到下一个断点)
    在这里插入图片描述


总结

以上就是我对于Linux中gdb使用的总结。感谢支持!!!
在这里插入图片描述

http://www.yayakq.cn/news/400190/

相关文章:

  • 佛山定制网站建设湖南网站开发 岚鸿
  • 如何快速提升网站权重招聘网页制作工程师
  • 广州建设行业信息网站软件开发公司排行
  • 物流信息网站cms网站弄论坛形式怎么做
  • 网站建设用户调研9免费建网站
  • 确定网站建设的目的如何开通企业邮箱
  • 承接婚庆公司网站建设本地架设wordpress
  • 搜狐最大的门户网站那些行业做网站优化的比较多
  • 网站建设泽宇app界面设计介绍
  • 网站开发人员什么软件可以免费制作图片
  • 新邱建设网站网站建设遇到的问题及对策
  • 做物流的在什么网站找客户呢韩城全员核酸检测
  • 济南网站制作哪家强自创游戏的软件
  • 岳阳网站建设制作wordpress sticky_posts
  • 天津营销网站建设.net域名 可以做公司网站吗
  • 建设专业网站网络网站做动态图片不显示
  • 湖州吴兴建设局网站做版面的网站
  • 网站开发任务单百度文库做网站用什么平台
  • 长春哪里做网站好当当网站建设的目标
  • 凡科做的网站可以在百度搜到吗wordpress文章伪静态
  • 网站首页 seowordpress 插件 语言
  • 重庆模板网站建设怎么样做网站需要考虑哪些问题
  • 网页设计跟网站建设的区别什么播放器能看无线新闻台直播
  • 电竞网站建设方案被称为网站开发神器
  • 网站关键词排名怎么做上去中企动力的网站如何
  • 做网站用别人的源码可以吗重庆seo整站优化外包服务
  • 网站聚合搜索怎么做有没有会计做兼职的网站
  • php做的直播网站wordpress 标签云制作
  • WordPress建站主机推荐遵义在线观看
  • 互站网源码商城陕西省建设厅执业资格注册中心网站报名系统