Keil中使用宏编译来定义DEBUG输出

使用宏编译来格式化调试信息,是一个不错的方法,即可以在需要的时候打印出信息,还可以格式化我们所需要的输出。

#define DEBUG   1
#if (DEBUG == 1) 
#define DBG(Args...) printf(##Args)
#define DBGFL(s, Args...) printf("[%s:%d]"##s, __FILE__, __LINE__, ##Args)
#else
#define DBG(Args...) 
#define DBGFL(s, Args...) 
#endif

上面的代码放置在每个C文件的头上。

下面是调用DBGFL

    DBGFL("HELOO=%d
", 6458);
    DBGFL("YXX
");

结果

[..DriversUserSrclis3dh.c:105]HELOO=6458
[..DriversUserSrclis3dh.c:106]YXX
原文地址:https://www.cnblogs.com/tfanalysis/p/4470164.html