debug 打印 开关 设计(for c || C++)

一、
头文件:
#define debug 1
 
#if debug
#define dbg_print(format,args...)\
    do\
    {\
        printf("[%s][%d]"format,__FUNCTION__, __LINE__,## args);\
    }while(0)
#else
#define dbg_print(format,args...)
#endif
 
c文件中使用:
 
dbg_print("para is NULL");
 
dbg_print("value(%d) is err", value);
 
二、
》》头文件《《
 
/* 调试打印 */
#define DEBUG 0
#if DEBUG
#define DebugPrintval(x) \
printf("[%s]%s:%d:%s=%d\n", __FILE__, __FUNCTION__, __LINE__, #x, x)
 
#define DebugPrintStr(x) \
printf("[%s]%s:%d:%s=\n%s\n", __FILE__, __FUNCTION__, __LINE__, #x, x)
 
#define DebugPrintPoint \
printf("[%s]%s:%d\n", __FILE__, __FUNCTION__, __LINE__)
 
#define DebugCr \
printf("\n")
   
#define DebugFuncEntry \
    printf("[%s]%s:Func Entry\n", __FILE__, __FUNCTION__, __LINE__)
   
#define DebugFuncExit \
    printf("[%s]%s:Func Exit\n", __FILE__, __FUNCTION__, __LINE__)
 
#else
 
#define DebugPrintval(x)
#define DebugPrintStr(x)
#define DebugPrintPoint
#define DebugCr
#define DebugFuncEntry
#define DebugFuncExit
 
#endif
 
使用:
DebugPrintval(i);

你可能感兴趣的:(debug 打印 开关 设计(for c || C++))