很好的debug方式取代printf满天飞

来源:互联网 发布:小学古诗大全软件 编辑:程序博客网 时间:2024/05/21 03:54
对于喜欢用printf Debug的同行来说,最麻烦的莫过于要重复输入很多printf语句,而且模块调试完成后要手动的把它们拿掉。
 
现在介绍一个很好的办法:
#ifdef DEBUG
#define D_STR(_STR_)   printf("f:%s(l:%d)%s\n",__FILE__,__LINE__,_STR_);
#define D_LINE         printf("f:%s(l:%d)-fn:%s\n",__FILE__,__LINE__,__FUNCTION__);
#define D_CHAR(_CHAR_) printf("f:%s(l:%d)%d\n",__FILE__,__LINE__,_CHAR_);
#define D_HEX(_HEX_)   printf("f:%s(l:%d)[%x]\n",__FILE__,__LINE__,_HEX_);
#else
#define D_STR(_STR_)   ;
#define D_LINE         ;
#define D_CHAR(_CHAR_) ;
#define D_HEX(_HEX_)   ;
#endif
 
对于你的debug信息是否显示只用通过DEBUG是否定义来控制。
0 0