linux下 C语言调试之道 WRITE_LOG

Linux下面c语言的调试很让人头疼,一般过一段代码就要printf一下或是写个函数输出,然后今天看到大牛代码里的一个宏特别简练易用,所以收藏一下。

#define WRITE_LOG(FORMAT, ...){						\
	do{								\
		FILE* fp	= fopen(LOG_FILE, "a");			\
		struct tm* pt;						\
		time_t time_now;					\
		struct timeval tv;					\
		gettimeofday(&tv, NULL);				\
		time(&time_now);					\
		pt	= localtime(&(tv.tv_sec));			\
		fprintf(fp, "%04d-%02d-%02d %02d:%02d:%02d.%03u "FORMAT"\n", \
			pt->tm_year+1900,				\
			pt->tm_mon+1,					\
			pt->tm_mday,					\
			pt->tm_hour,					\
			pt->tm_min,					\
			pt->tm_sec,					\
			(u32)(tv.tv_usec)/1000,				\
			##__VA_ARGS__);					\
		fclose(fp);						\
	}while(0);							\
}


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值