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

白云区建网站设计wordpress注册数学验证

白云区建网站设计,wordpress注册数学验证,企业企业网站建设,阿里云万网网站制作Linux下调试工具——gdb 文章目录 makefile自动化构建工具 gdb背景 gdb的使用 常用命令 总结 前言#xff1a; 编写代码我们使用vim#xff0c;编译代码我们使用gcc/g#xff0c;但是我们#xff0c;不能保证代码没问题#xff0c;所以调试是必不可少的。与gcc/vim一样 编写代码我们使用vim编译代码我们使用gcc/g但是我们不能保证代码没问题所以调试是必不可少的。与gcc/vim一样Linux下的调试功能也是独立的一个工具——gdb 那么我们话不多说开启今天的话题 ✈️ gdb背景 我们知道程序的发布方式有两种dubug模式 和 release模式。 Linux gcc/g编译出来的 二进制程序默认是release模式。 要使用gdb调试工具必须在源代码上生成二进制程序的时候加上 -g 选项。 为了能够控制在源码生成二进制程序的时候加上-g选项我们可以在makefile文件中进行操作 我们在windows写代码时调试工具大家多多少少也都用过但是为什么还分为debug版本和release版本呢或者说他们的区别是什么 区别就是在debug模式下形成的可执行程序会给我们添加调试信息。在release模式下形成的可执行程序会给我们去掉调试信息。 结论release模式下的程序体积更小性能更好debug模式下可以进行调试release模式下不能调试 一般我们应用是面向广大用户的用户只是需要使用应用即可总不能让他们用调试工具来调试吧。所以一般我们给用户的发布版本就是release版本。 所以默认情况下gdb是以release版本发布的那么我们如何让gdb以debug版本发布呢使用 readelf命令 可以读取可执行程序的格式 可以看到debug的调试信息就出来了我们再将makefile中目标文件的-d删除 ✈️ gdb的使用 通过前面的学习我们已经知道了gcc/g的 默认行为 默认是动态链接 默认是release版本发布 我们将makefile文件更改之后再次使用make命令所生成的可执行程序就是 带有调试信息的可执行程序这个时候就可以对程序进行调试了。 调试方法 gdb 带有调试信息的可执行程序#进入调试页面如果你的Linux下没有gdb调试工具可以用以下指令安装对应的调试工具 yum -y install gdb#安装gdb调试工具为了能够更好地理解gdb调试工具我们可以结合着windows下的vs的调试来进行比较。 开始使用 我们有了带调试信息的可执行程序之后使用 gdb mybin进入到调试页面 当我们看到这样的页面就说明你已经开始调试了下面我来一一介绍在gdb中对应指令的功能。我们先准备一个.c的源文件 list或l命令 作用 显示指定行之后的代码gdb自动记录最近一条指令每次列10行。 用法 l 行号或 l 函数名 测试用例 为什么使用list 3不是从第三行开始的这是因为gdb的list行为是 将要显示的行放在比较靠中间的位置而不是从所输入的行开始显示。 run或r命令 作用 运行程序。 用法 直接输入r再回车即可。 测试用例 我们在vs下打断点只需要在左侧边框按一下鼠标左键取消也仅仅只需要按一下鼠标左键 而我们Linux的gdb只有使用对应的指令才能打断点。 breakpoint或b命令 作用 在某一行或者某个函数设置断点。 用法 b 行号或b 函数名或b 文件名:行号 info 命令 作用 查看断点信息。 用法 info b 测试用例 d命令 作用 删除断点。 用法 d 断点编号 测试用例 断点删除 不能根据行号来删除只能根据断点编号来删除。 在vs中我们也可以禁用断点 禁用断点之后调试就不会从这里停下来了在gdb中我们也有禁用断点的指令。 disable/enable命令 作用 使能禁用/开启断点。 用法 disable/enable 断点编号 测试用例 断点禁用之后运行是不会从被禁止断点处停下的。 如果运行时经过断点那么在info b的时候就会显示命中次数 在vs中我们有单步调试逐语句和逐过程的快捷键 那么在Linux下gdb调试工具的单步调试就是 next或n命令 作用 逐过程进行单步调试 用法 程序在运行时直接输入n回车即可。 测试用例 step或s命令 作用 逐语句进行单步调试。 用法 程序在运行时直接输入s回车即可。 测试用例 在vs中我们可以在调试里的监视窗口对变量的内容或者地址进行显示。 而在Linux下的gdb中我们使用如下命令来显示变量内容和地址。 p命令 作用 显示变量的内容和地址 用法 p 变量名 测试用例 display/undisplay命令 作用 常显示 变量的内容和地址。 用法 display 变量名/取地址和undisplay 编号 测试用例 continue或c命令 作用 从一个断点运行到下一个断点。 用法 程序运行时直接输入c回车从这个断点运行到下个断点。 测试用例 finish命令 作用 将一个函数运行结束就停下来。 用法 程序运行时直接使用finish命令即可。 测试用例 until命令 作用 在一个范围内直接运行到指定行。 用法 until 行号 测试用例 在vs下我们要想修改变量的值需要打开源文件再进行修改修改完之后再调试而在Linux下的gdb工具可以实现 不用退出调试更改变量使用set var命令即可。 set var命令 作用 修改一个变量的内容。 用法 set var 变量名修改的值 测试用例 bt命令 作用 查看调用堆栈信息。 用法 直接输入bt回车。 测试用例 以上就是gdb调试的一些常用指令操作了如果要退出gdb模式只需要 输入q再回车 即可退出gdb模式。 ✈️ 总结 想要进行调试需要再makefile文件里生成目标文件时加上-g选项生成的可执行程序可以使用readelf指令查看是否具有调试信息。操作理念是具有迁移性的在windows的os下我们使用vs进行调试只不过在Linux下使用命令行的形式来进行调试但是调试都是一样的。常用调试指令不用记只要多使用使用这些都会接触到。 如果这篇文章对你有帮助的话还望三连支持一下博主~~
http://www.dnsts.com.cn/news/88604.html

相关文章:

  • 张家界做网站建酒店网站
  • 网站个人备案需要什么资料团购网站开发需要多久
  • 网站建设有模板吗可以做照片书的网站
  • 自己学做网站自适应wordpress模板免费
  • 扬州外贸网站建设公司滕州 网站 建设
  • 长治网站建设龙采科技技术支持如何进行线上推广
  • 泰安网站建设如何网站如何做防护
  • 网站建设知识点的总结厦门做点击付费网站
  • 做暧在线网站厦门网站建设
  • 中山外贸网站开发企业网站备案去哪里
  • 设计交流网站网站开发大学
  • 网站建设好的公司哪家好seo宣传网站
  • 做网站写代码怎么样软文投放平台有哪些?
  • 网站源码怎么预览wordpress一键排版
  • 鹤峰网站制作赤风设计网站
  • 黑网站代码制作网站开发流程数据库
  • 网站如何做seo排名学习做网站的网站
  • 沈阳高端网站定制用vs做网站
  • 做酒店网站如何做电商设计
  • 网站开发需要学什么网站建站网站看看
  • 时尚网站设计案例网站别名
  • wordpress增加关键字排名优化网站建设
  • 网站没被收录什么原因黄石市网站建设
  • 简洁软件下载网站源码wordpress hover
  • 延吉网站开发公司有哪些谷歌seo外链
  • 做网站订金是多少龙拓网站建设
  • 诚客网站建设七牛搭建网站
  • 网站开发确认表wordpress 闪图不
  • 织梦网站如何做移动端包头学做网站
  • wordpress上传大文件广州seo网站管理