c-log windows

搞一个日志库,找了资料发现 很多都是在unix环境下运行,要么就是这库比较大,
AderStep的 http://blog.csdn.net/gatieme/article/details/50603682 有详细的比较了几个日志库,有兴趣可以看下。
就想来了轻量级的吧,看了下发现c-log ,,简单呗。

//
1、找不到pthread.h ; 搜了下还真有unix下移植到win32的pthread, https://sourceware.org/pthreads-win32/

2、替换平台函数 e.g: __thread snprintf 之类的

#ifdef WIN32
#define AUTO_TLS __declspec(thread)     ///< win 线程局部storage
#define snprintf _snprintf
#else
#define AUTO_TLS __thread
#endif

3、宏定义 可变参数
unix 下可比较方便的定义

#define MY_PRINT(fmt, args...) my_print(level, fmt, ##args)

win 下 貌似没有这种用法但是可以用VA_ARGS 替换一把,或者用其他 的方式, 方法是想出来的,搜出来的也行嘛,,,

#define MY_PRINT(fmt, ...) my_print(level, fmt, __VA_ARGS__)

然后 然后 就可以了。。。。

一下贴个 例子吧

#ifdef WIN32
#define LOG_WARN(log_fmt, ...) \
    do{ \
    WARN_W.log(LL_WARNING,   "[%s:%d][%s] " log_fmt "\n", \
    __FILE__, __LINE__, __FUNCTION__, __VA_ARGS__); \
    } while (0) 
#else
#define LOG_WARN(log_fmt, log_arg...) \
    do{ \
    WARN_W.log(LL_WARNING,   "[%s:%d][%s] " log_fmt "\n", \
    __FILE__, __LINE__, __FUNCTION__, ##log_arg); \
    } while (0) 
#endif

附上 源码地址
http://download.csdn.net/detail/u013865277/9608930

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值