柴库柴库 发表于 2025-7-21 10:00

我的#ifdef不能正常工作?

本帖最后由 柴库柴库 于 2025-7-28 11:06 编辑

我有一个定义的 __BOOTLOADER 符号,如附图所示。

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



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未更新宏定义,或编译器缓存导致旧配置生效。
页: [1]
查看完整版本: 我的#ifdef不能正常工作?