STM32 在用JLink 调试的时候发现有一条将unsigned char赋值给int的语句始终不能执行,int类型变量的值始终为0;

查资料找到这个问题是编译器优化的原因,也就是说由于编译器优化,赋值语句始终没有执行;

解决办法:

在变量声明前加 volatile 修饰即可,这样就能保证赋值语句不会被编译器优化。

相关文章:

  • 2021-12-05
  • 2021-10-18
  • 2022-03-09
  • 2021-09-22
  • 2022-01-05
  • 2022-12-23
猜你喜欢
  • 2021-09-11
  • 2021-08-23
  • 2022-12-23
  • 2022-12-23
  • 2021-06-10
  • 2021-10-18
相关资源
相似解决方案