GDB使用总结(1)平时常用

本文详细介绍了如何使用Bash和GDB进行进程监控和调试。从找到进程ID,到利用GDB附加进程,设置断点,条件断点,观察点,以及单步执行、查看堆栈信息和内存数据等操作,全面讲解了C/C++程序调试的常用技巧。同时涵盖了禁用/启用断点、查看断点状态以及函数内部变量信息的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

首先bash视图-> ps | grep xxxx(进程名称) ->显示出进程号

su视图-> gdb attach xxxx绑定特定进程

设置断点

b name_of_func

b  line_number

b filename:lineNumber

b filename:function

b … if < condition>

其中…可以是上述的break lineNumberbreak +offset/break -offset中的参数,其中condition表示条件,在条件成立时程
序即停止运行,如设置break if i=100表示当i为100时程序停止运行。

disable breakpoints:禁用断点

enable breakpoints:启用断点

开始单步执行

start,停在第一执行语句

继续运行

c

单行运行

n

查看栈帧

bt

bt n 显示栈顶几个层

bt -n 显示栈底下几个层信息

x:查看内存x/20xw 显示20个单元,16进制,4字节每单元

frame 切换函数的栈帧,简写f

设置观察点

watch xxxx(变量名) 被设置观察点的变量发生修改时,打印显示

查看函数内部局部变量信息

info i

info breakpoints:查看当前设置的所有断点

打印

x按16进制格式显示变量

d按十进制显示变量

u按十六进制格式显示无符号整形

o按八进制格式显示变量

t按二进制格式显示变量

c按字符格式显示变量

f按浮点数格式显示变量

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值