不同优化等级下对debug的影响

利用cube生成的L011F4工程下,发现debug时程序并没按照指定顺序进行执行,很多变量也没有显示具体值或者值显示与实际不符,查看了下软件优化等级,发现为-o3,才意识到在该等级下调试会被很大优化导致的,而在-o0优化等级下,最少的优化,可以最大程度上配合产生代码调试信息,可以在任何代码行打断点。另外也要注意在该等级下,对多线程、中断的公用标志量volatile关键字的使用,防止出现不符合逻辑的问题。具体可参某乎作者关于MDK优化的文章:

https://zhuanlan.zhihu.com/p/24402180

猜你喜欢

转载自blog.csdn.net/u011116085/article/details/107504993