为PlatformIO与ESP32开发库时,可用哪个#ifdef宏判断是否使用PlatformIO编译?
判断是否使用PlatformIO编译的预定义宏
- PlatformIO在编译时会自动定义
PLATFORMIO宏,你可以通过#ifdef PLATFORMIO判断当前是否处于PlatformIO编译环境中,用法示例:
#ifdef PLATFORMIO // 仅在PlatformIO编译时执行的代码 #pragma message("Compiling with PlatformIO") #endif
- 若需要判断PlatformIO的具体版本,还可使用预定义的
PLATFORMIO_VERSION宏,它以整数形式表示版本号(比如PlatformIO 6.1.5对应60105,格式为主版本*10000 + 次版本*100 + 修订版本),示例:
#if PLATFORMIO_VERSION >= 60100 // 仅在PlatformIO 6.1.0及以上版本执行的代码 #endif
这两个宏是PlatformIO全局注入的,不受ESP32或其他目标平台影响,能满足你跨平台适配的需求。
内容的提问来源于stack exchange,提问作者HumpbackWhale194
相关产品推荐
相关产品推荐

