[STM32G0] 我的#ifdef不能正常工作?

[复制链接]
 楼主| 柴库柴库 发表于 2025-7-21 10:00 | 显示全部楼层 |阅读模式
本帖最后由 柴库柴库 于 2025-7-28 11:06 编辑

我有一个定义的 __BOOTLOADER 符号,如附图所示。
24390687cf74f99f13.png
我想根据定义的符号显示固件版本,因此使用了 #ifdef 语句来选择正确的字符串。集成开发环境(IDE)正确显示了源代码:灰色/非灰色部分按预期显示。但当我运行程序时,GB_FW_REV[] = "5.26.1" 而不是 "5.26.B"。

71158687cf78444b4c.png

jiekou001 发表于 2025-7-22 09:59 | 显示全部楼层
这种问题还没遇到过呢,你先用两条测试一下。
classroom 发表于 2025-7-23 15:50 | 显示全部楼层
宏未正确定义?
powerantone 发表于 2025-7-23 15:52 | 显示全部楼层
拼写或语法错误?
flycamelaaa 发表于 2025-7-23 16:51 | 显示全部楼层
将宏定义移至全局头文件所有文件可访问。避免在函数内定义宏
stormwind123 发表于 2025-7-23 20:52 | 显示全部楼层
头文件未正确包含?
probedog 发表于 2025-7-23 22:52 | 显示全部楼层
IDE未更新宏定义,或编译器缓存导致旧配置生效。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

47

主题

67

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部