GDB调试之变量查看与修改(四)
一、查看函数参数
使用命令"p 参数名称"可以查看指定参数的值,如果想一次性查看函数的所有参数,可以使用命令"info args"或者"i args"即可。
代码中有一个test_work函数,在这个函数处设置一个断点,然后查看此函数的参数信息:
二、查看变量的值
三、设置字符串的显示规则
上述代码中使用命令p输出name的值,但是可以看到字符串后面有很多结束符,因为name定义的长度是100个字节,但是实际使用的字节却只有11个字节,剩余的字节都会使用结束符来做填补,这样看起来十分不美观 。所以可以使用命令"set print null-stop",表示遇到null结束符就不需要再打印了。
四、显示结构体信息
五、显示数组
六、gbd内嵌命令的使用
查看类型的大小:
查看字符串大小:
七、修改变量的值
在test_work函数处设置断点,并执行到断点处,查看它的参数,从age=25可以判断处它只会执行"cout << "Yong guy:" << name << endl;"这条语句。
如果我们想要程序执行"cout << "Old guy:" << name << endl;"这条语句呢,那么就需要修改age的值,比如说将age的值改为55。
修改结构体的值:
通过gdb内嵌的函数修改字符串的值:
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?