【Linux】gdb调试

目录

gdb调试工具

调试:

运行代码:

查看代码:

添加断点:

打印变量的值

断点情况:


gdb调试工具

gcc-gxxx.c生成一个a.out

gdb a.out

r/run:运行代码

l/list:显示当前行下面的 10行代码

b/break 函数名/行号:添加断点

info b:查询断点信息

d/delete num:删除断点

p/print 变量名:查看变量的值

s/step:单步执行程序,如果是函数会进入

n/next:单步执行程序,如果是函数整体执行,不会进入

help:帮助

q:退出

调试:

运行代码:

查看代码:

添加断点:

先在add 函数处添加了断点,然后直接运行程序

然后就停在了第5行(实际上是从第12行调用的),也就是在 add中 return的位置

执行 n指令,继续走一步,来到第6行

再次执行n指令,也就是ret赋值完毕来到第13行

按下回车,执行上一次的指令,也就是 n,执行printf语句打印信息,显示下一行语句:return 0

打印变量的

断点 情况

查看断点

删除断点

相关推荐
季柳东1 分钟前
在虚拟机Ubuntu18.04中安装NS2教程及应用
linux·运维·ubuntu
冼紫菜4 分钟前
如何在 CentOS 7 虚拟机上配置静态 IP 地址并保持重启后 SSH 连接
linux·开发语言·centos·ssh
christine-rr27 分钟前
【25软考网工】第六章(4)VPN虚拟专用网 L2TP、PPTP、PPP认证方式;IPSec、GRE
运维·网络·网络协议·网络工程师·ip·软考·考试
oioihoii35 分钟前
C++23 views::slide (P2442R1) 深入解析
linux·算法·c++23
乐言3611 小时前
如何用Jmeter实现自动化测试?
运维·jmeter·自动化
hnlucky1 小时前
《基于 Kubernetes 的 WordPress 高可用部署实践:从 MariaDB 到 Nginx 反向代理》
运维·数据库·nginx·云原生·容器·kubernetes·mariadb
Jerry&Louis1 小时前
【Ubuntu】neovim & Lazyvim安装与卸载
linux·ubuntu
风筝超冷1 小时前
获取高德地图JS API的安全密钥和Key的方法
服务器·mysql·js api
我叫珂蛋儿吖2 小时前
[redis进阶六]详解redis作为缓存&&分布式锁
运维·c语言·数据库·c++·redis·分布式·缓存
头疼的程序员2 小时前
linux入门学习(介绍、常用命令、vim、shell)
linux·vim