simple log test

1、简单的log打印函数测试

        ##__VA_ARGS__ 宏前面加上##的作用在于,当可变参数的个数为0时,这里的##起到把前面多余的","去掉的作用,否则会编译出错。

#define MY_PRINTF_NORMAL	0
#define MY_PRINTF_MUST		1
#define MY_PRINTF_ERROR		2
#define MY_PRINTF_DEBUG		3
#define MY_PRINTF_LEVEL		MY_PRINTF_DEBUG
 
#ifdef DEBUG    //调试开关
    #define log(format, ...) printf("File: "__FILE__", Line: %05d: "format"/n", __LINE__, ##__VA_ARGS__)  
#else    
    #define log(format, ...)
#endif

#define log_print(level, ...); {				   		                 \
		if(level <= MY_PRINTF_LEVEL){		 						     \
			log(__VA_ARGS__);                                            \
          //log("error no: %d, error msg : %s", errno, strerror(errno)); \
            exit(1);                                                     \
		}															     \
 

2、测试用例

用例1:
log("this is a test , arg is %d \n", a);  //直接打印

用例2:
log_print(MY_PRINTF_ERROR,"this is a test , arg is %d \n", a); //根据打印等级,判断是否需要打印

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值