C/C++ 宏定义 ENABLE_DEBUG 用法详解 - 控制调试信息打印
C/C++ 宏定义 ENABLE_DEBUG 用法详解 - 控制调试信息打印
宏定义 ENABLE_DEBUG 的作用是根据定义与否来决定是否打印调试信息。
代码示例
#define ENABLE_DEBUG
#ifdef ENABLE_DEBUG
#define TFD_LOGI(...) printf(__VA_ARGS__)
#else
#define TFD_LOGI(...)
#endif
int main() {
TFD_LOGI("调试信息");
return 0;
}
解释
#define ENABLE_DEBUG:定义宏 ENABLE_DEBUG。#ifdef ENABLE_DEBUG:如果宏 ENABLE_DEBUG 已定义,则执行接下来的代码块。#define TFD_LOGI(...) printf(__VA_ARGS__):定义宏 TFD_LOGI,并将其展开为printf(__VA_ARGS__)。#else:如果宏 ENABLE_DEBUG 未定义,则执行接下来的代码块。#define TFD_LOGI(...):定义宏 TFD_LOGI,但不会将其展开为任何代码。
总结
- 如果定义了
ENABLE_DEBUG,则TFD_LOGI宏将会展开为printf(__VA_ARGS__),可以打印出传入的调试信息。 - 如果没有定义
ENABLE_DEBUG,则TFD_LOGI宏不会展开为任何代码,不会打印调试信息。
通过使用 ENABLE_DEBUG,可以方便地控制程序是否打印调试信息,方便调试和优化代码。
注意: 在实际应用中,建议使用更专业的日志库,例如 log4c 或 spdlog 等,以获得更强大的日志功能。
原文地址: https://www.cveoy.top/t/topic/p1Q6 著作权归作者所有。请勿转载和采集!