注册 登录
查看: 381|回复: 6

怎么有些函数里面设置不了断点呀

[复制链接]
发表于 2014-5-18 20:23:37 | 显示全部楼层 |阅读模式
在线调试,想观察某个函数里面的变量,可是这函数里面的任何位置好像设置不了断点呀,

发现好像程序本来就进不去这个函数,怎么破,一般会是什么个情况???
回复

使用道具 举报

发表于 2014-5-18 21:43:00 | 显示全部楼层
如果函数没有被调用,那么是不能设断点的!编译生成的固件里也没有这个代码的。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-5-18 22:11:09 | 显示全部楼层
山外メ雲ジ 发表于 2014-5-18 21:43
如果函数没有被调用,那么是不能设断点的!编译生成的固件里也没有这个代码的。

最近程序总是跑飞,今天就加入了几个变量,程序各种不行了
回复 支持 反对

使用道具 举报

发表于 2014-5-18 23:15:06 | 显示全部楼层
gsc617 发表于 2014-5-18 22:11
最近程序总是跑飞,今天就加入了几个变量,程序各种不行了

看调用栈啊,看山外哥的视频,有讲调用栈。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-5-19 09:20:04 | 显示全部楼层
栾端静 发表于 2014-5-18 23:15
看调用栈啊,看山外哥的视频,有讲调用栈。

调用栈我一直在用,可是有时候就因为一个变量的转换不严格,程序整天跑飞,

调用栈也不怎么好使了(可能不是很会用)程序又长得找半天才找到,所以我最常用的是设置断点。。。

还有什么好的方法调试程序的???支支招呗
回复 支持 反对

使用道具 举报

发表于 2014-5-19 12:49:40 | 显示全部楼层
gsc617 发表于 2014-5-19 09:20
调用栈我一直在用,可是有时候就因为一个变量的转换不严格,程序整天跑飞,

调用栈也不怎么好使了(可 ...

调用栈,其实是看前后调用的函数,他们的局部变量是否正确,是否为预期的,从而一步步分析原因。

而不是一下子给你找到bug的地方。

只需要在断言、默认中断函数等设个断点,等跑飞后,就可以通过调用栈层层调用往上找,找到异常的地方。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-5-19 15:00:49 | 显示全部楼层
山外メ雲ジ 发表于 2014-5-19 12:49
调用栈,其实是看前后调用的函数,他们的局部变量是否正确,是否为预期的,从而一步步分析原因。

而不 ...

哦哦,调用栈这样用的,看来我以前不会用呀,瞎玩;谢谢山外哥
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回列表 返回顶部