目录
一、问题描述
keil5 在debug仿真过程中,发现运行到switch case语句时,出现下面问题:
1、打了断点并不能按顺序执行。
2、部分case后面语句无法打断点。
3、逻辑上只能执行第一个case后面的语句,却运行到第五个case语句。
如下截图: 第一步到第四步顺序混乱,第五步直接越界到case 5
二、解决办法
设置优化等级为Level0(-O0)!!!!
先前为Level3(-O3),设置Default也没有, 亲测Level0有效。
设置优化等级Level0(-O0)后,重新编译再debug,则可正常打断点,程序可正常运行。
类似问题的其他解决办法: