原创 调试相关宏

2010-7-25 21:50 2000 7 7 分类: MCU/ 嵌入式

gcc的预处理提供的可变参数宏定义真是好用:
#ifdef DEBUG

#define dbgprint(format,args...) \

fprintf(stderr, format, ##args)

#else

#define dbgprint(format,args...)

#endif





如此定义之后,代码中就可以用dbgprint了,例如dbgprint("aaa %s", __FILE__);。感觉这个功能比较Cool !

下面是C99的方法, 感谢zalem兄:

#define dgbmsg(fmt,...) \

printf(fmt,__VA_ARGS__)

常用的:
#define dprintf(fmt, args...) printf("%s %s %d: "fmt"\n",__FILE__, __func__, __LINE__, ##args );

#define dputs(str) printf("%s %s %d: %s\n",__FILE__, __func__, __LINE__, str );


文章评论0条评论)

登录后参与讨论
我要评论
0
7
关闭 站长推荐上一条 /2 下一条