前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Tool之dprintf

Tool之dprintf

作者头像
Taishan3721
发布2019-11-20 22:31:01
1.2K0
发布2019-11-20 22:31:01
举报
文章被收录于专栏:这里只有VxWorks

没人能保证自己编码一次成功,只要Coding,就难免有Bug。因此才有了《Tool之Debugger》存在的必要;在调试过程中,又难免添加一些打印语句,通常使用函数printf(),或者logMsg(),再或者《Component之kprintf》。但这会改变代码,并且需要重新编译、下载,有些麻烦。有没有更省事的方法呢?可以考虑WorkBench的"dynamic printf"

这个"dynamic printf"是从Vx67开始新加的功能。它是在WorkBench中(而不是Code中),基于断点,动态插入打印语句,当程序执行到特定位置时,可以用来打印变量的值,目前支持的变量类型有int和char*

启动一个最简单的例子

程序里有个变量i,它的值一直在变。因为是Local的,不能在Shell里查看它;加断点的话,又会打断程序的执行,影响循环的周期。

那就试试dprintf:先启动Debugger(例如通过Attach这个任务)

然后在代码合适的位置右击,选择Add Dynamic printf

在打开的dprintf属性页面里添加要打印的内容即可

点击确定之后,在断点窗口里就可以看到这条dprintf语句了。很快,Target端也输出了dprintf的执行结果

有兴趣的话,可以试试dprintf的几个属性

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-11-20,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 这里只有VxWorks 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档