社区
C语言
帖子详情
当一个全局变量值被改写时,如何跟踪?
weitao999
2010-12-24 01:28:15
记录日志或者主动产生core文件。
...全文
821
17
打赏
收藏
当一个全局变量值被改写时,如何跟踪?
记录日志或者主动产生core文件。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
17 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
weitao999
2010-12-25
打赏
举报
回复
已通过mprotect解决,但总是复现不了,有没有很好的内存越界检查工具呢,C语言代码。
dukong123
2010-12-25
打赏
举报
回复
输出日志。。。。。。。。。。。
T0Ols
2010-12-25
打赏
举报
回复
调试真的很难
luciferisnotsatan
2010-12-24
打赏
举报
回复
调试的话,可以设内存断点
Jim_King_2000
2010-12-24
打赏
举报
回复
Windows下可以使用内存断点。
libinfei8848
2010-12-24
打赏
举报
回复
[Quote=引用 5 楼 memoleak 的回复:]
使用观察点。。。
现在多数CPU都能支持数据断点功能。
在数据断点使能时,
当CPU访问该地址时,CPU会陷入异常。在异常处理程序里面可以处理之。。。
参见GDB使用手册
[/Quote]
支持,windows下将变量放在保护属性的内存地址,使用seh捕捉修改写异常,在异常中通知
xx说就叫这个名字
2010-12-24
打赏
举报
回复
记得gdb调试中可以加条件实现断点!
break if ...(这里可以写全局变量不等于原有值)
这样当全局变量被改变是就断点。。
hl0702xin
2010-12-24
打赏
举报
回复
断点追踪`
羽飞
2010-12-24
打赏
举报
回复
楼上的建议不错,最好在使用全局变量的地方做个标记,尤其是在修改全局变量时
ZXW0521
2010-12-24
打赏
举报
回复
写一个函数,只有这个函数会改这个全局变量,其它地方都调这个函数,应该就好调试一些了
csc_xixi
2010-12-24
打赏
举报
回复
其实我觉得用调试,然后不断的观察它的值,注意变化,或者用个if语句,当值发生变化,就输出一条提示信息
memoleak
2010-12-24
打赏
举报
回复
使用观察点。。。
现在多数CPU都能支持数据断点功能。
在数据断点使能时,
当CPU访问该地址时,CPU会陷入异常。在异常处理程序里面可以处理之。。。
参见GDB使用手册
flysnowhite
2010-12-24
打赏
举报
回复
我只会最简单的单步跟踪,F10或F11,若全局变量和局部变量同名,自己区分是那一个变量起作用。
如果希望追踪的话,借鉴操作系统的PV操作。当全局变量变化时,记录调用的函数及语句即可。具体编程较麻烦。
prohibit
2010-12-24
打赏
举报
回复
感觉还是少用全局变量好,要是可以还是改为参数传递吧,全局变量可能会在一些不明显的包含文件中被重新定义,若是使用的少还好跟踪些,要是使用的比较多、跟踪就麻烦了,记录日志应该是一个好的方法~~
weitao999
2010-12-24
打赏
举报
回复
关键是也复现不了,但通过已有的core文件能确认某个全局变量被改写了,所以只能先加调试信息,等下次出现时确认具体原因。
minmin0876
2010-12-24
打赏
举报
回复
如果可以调试的情况 可以才想几处 可疑点 加断点调试
或者 每个点都断 然后在变量那里看结果
KEIL调试
时
的WATCH窗口是查看的
全局变量
值
,不能看内部变量
值
watch框内的变量只有在当前变量作用域的才可以添加,例如
全局变量
。局部变量即使添加后,在下次调试
时
也会从watch窗口移除,改到locals窗口内显示。这个 ' 符号似乎是表示该变量是上次调试
时
定义的,好像没其他什么作用。做过测试,只要成功被记录进watch窗口的
全局变量
,即使该量的物理地址发生了变化,下次调试
时
调试器也能准确
跟踪
到,并在watch内刷新结果。locals窗口是查看当前函数处内部
15、高级IR生成:添加调试元数据与
跟踪
变量
值
本文详细介绍了如何在LLVM中添加调试元数据并
跟踪
变量
值
,以实现源代码级别的调试。内容涵盖调试元数据的基本结构、数据类型描述、示例代码以及变量
跟踪
技术,同
时
讨论了实际应用中的注意事项和优化建议。
监控变量
值
,当变量
值
改变
时
,引发
值
改变件事。
【代码】监控变量
值
,当变量
值
改变
时
,引发
值
改变件事。
C语言
70,039
社区成员
243,246
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章