简单的Log宏的写法

    在开发的过程中,会在代码中插入一些调试用代码,一般用来向文件或是屏幕输出调试信息。虽然C标准库提供了assert, 但是assert会中断程序,而且有的系统用的C语言库并没有此类的宏,移植性差,因此自己做一些Log宏,可以满足自己的要求。这些宏可以显示某个变量的值,显示出现的错误,一般可以结合__FILE__,__LINE__这些宏来定位信息。同时,结合条件编译又可以分为多种输出级别,例如,DUMP,DEBUG,ERROR,FATAL等级别。 只有在定义这些条件时,宏才起作用。

例如

#ifdef DUMP

#define DUMP_LOG(x)  x

#else

#define DUMP_LOG(x)

#endif

#ifdefine DUMP || DEBUG

#define DEBUG_LOG(x)  x

#else

#define DEBUG_LOG(x)

#endif

#ifdefine DUMP || DEBUG||ERROR

#define ERROR_LOG(x)  x

#else

#define ERROR_LOG(x)

#endif

#ifdefine DUMP || DEBUG||ERROR||FATAL

#define FATAL_LOG(x)  x

#else

#define FATAL_LOG(x)

#endif

 

定义完后,在代码中可以在这些宏中写一个语句,用于调试

例如: ERROR_LOG(printf("%s:%d:error description/n",__FILE__,__LINE__););

通过编译时定义这些编译条件宏来决定使用那些调试语句。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值