打印
[开发工具]

keil MDK的c语言环境调试问题

[复制链接]
4095|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
smartsheep|  楼主 | 2007-9-27 16:51 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我在用MDK3.05A仿真调试时,它的c语言环境下执行顺序乱跳,比如if-else分支语句,它居然会两个分支都进入一次,真实莫名其妙。

不知大家有没有碰到过这个问题? 我录了一段视频,供大家探讨。
相关链接:https://bbs.21ic.com/upfiles/img/20079/2007927164943617.rar
沙发
rogetxu| | 2007-9-30 12:15 | 只看该作者

1

看过他的汇编,能知道进行优化了

使用特权

评论回复
板凳
smartsheep|  楼主 | 2007-10-9 10:51 | 只看该作者

并没有使用优化功能

优化选项是default, 难道他默认还会优化? 以前没发现这种情况啊

使用特权

评论回复
地板
computer00| | 2007-10-9 11:01 | 只看该作者

默认当然是有优化的了。

使用特权

评论回复
5
smartsheep|  楼主 | 2007-10-30 16:58 | 只看该作者

就算优化了也不至于乱跳吧?

现在调试时很不爽啊

使用特权

评论回复
6
浪淘沙| | 2007-10-30 17:12 | 只看该作者

请LZ把你的程序代码贴上来

看不到程序如何探讨?

尤其是你的BSP_595BitSet和BSP_595BitClr,这两行显然是宏定义,根据现象很可能是这两个宏中有相同的语句行。

还有一点要问,调试时执行语句的高亮行乱跳,但你的程序结果对不对?如果程序结果正确,则肯定是优化的问题,出现这样的问题是因为调试界面做得不太好;如果程序结果错误,才会与编译器有关。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

21

主题

57

帖子

0

粉丝