使用C宏启用/禁用LOG级别

Putta ks
#include <stdio.h>

#define LOG_D(x)  {  printf("D:");  printf(x);}
#define LOG_E(x)  {  printf("E:");  printf(x);}

void test(void)
 {

   LOG_D("ALL is well " );
 }

我有一个非常庞大的代码,它具有不同级别的日志,就像上面的代码一样。在最终测试的库中,我只需要一个错误日志即可减小代码大小。

所以我想要这样的东西

#define ENABLE_DEBUG_LOG 0
#define ENABLE_ERROR_LOG 1

#define LOG_D(x)  {#if(ENABLE_DEBUG_LOG==1) printf("D:");  printf(x); #endif}
#define LOG_E(x)  {#if(ENABLE_ERROR_LOG==1)  printf("E:");  printf(x);#endif}

我添加此#if(ENABLE_DEBUG_LOG == 1)只是为了说明,我需要一些可以编译的解决方案。

增加

另一个选项-您可以注释/取消注释ENABLE_DEBUG_LOGENABLE_ERROR_LOG禁用/启用相应的日志级别。

// #define ENABLE_DEBUG_LOG    // disable DEBUG_LOG
#define ENABLE_ERROR_LOG       // enable ERROR_LOG

#ifdef ENABLE_DEBUG_LOG
#define LOG_D(x)  {  printf("D:");  printf(x);}
#else
#define LOG_D(x) // nothing
#endif

#ifdef ENABLE_ERROR_LOG
#define LOG_E(x)  {  printf("E:");  printf(x);}
#else
#define LOG_E(x)  // nothing
#endif

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用C程序启用禁用键

来自分类Dev

使用C程序启用“禁用”键

来自分类Dev

禁用级别日志 log4j

来自分类Dev

C#使用数组,Win Forms / MVP启用/禁用按钮

来自分类Dev

如何使用C在mspgcc中启用/禁用中断?

来自分类Dev

通过设置启用/禁用日志级别google-chrome-devtools

来自分类Dev

通过设置启用/禁用日志级别google-chrome-devtools

来自分类Dev

使用C ++内联UnrealEngine UE_LOG宏

来自分类Dev

启用和禁用使用javascript

来自分类Dev

使用tinymce禁用/启用按钮

来自分类Dev

使用VBS禁用/启用Taskmanager

来自分类Dev

使用@Input 禁用/启用按钮

来自分类Dev

使用 PHP 启用/禁用 htaccess?

来自分类Dev

在 OneDrive 中使用启用宏的 Excel 文件

来自分类Dev

使用C#处理启用了宏的Excel文件的警报弹出对话框

来自分类Dev

如何“禁用”从C-Header导入的宏

来自分类Dev

使用宏的C枚举

来自分类Dev

使用宏的C枚举

来自分类Dev

C ++启用,禁用类成员函数?

来自分类Dev

C#Winform ToolTip启用/禁用

来自分类Dev

在C#中启用/禁用StartupTask

来自分类Dev

通过C#代码启用/禁用<a>标签

来自分类Dev

从C#背后的代码启用/禁用验证

来自分类Dev

Camel:如何使用CamelContext启用/禁用端点

来自分类Dev

使用KO禁用\启用Bootbox按钮

来自分类Dev

使用ng-disabled启用/禁用按钮

来自分类Dev

如何启用/禁用使用jQuery的悬停?

来自分类Dev

使用js启用和禁用单选按钮

来自分类Dev

使用复选框启用/禁用按钮