C-简易打印宏

小烦恼

有时候写超级小的模块,打印不够规范…
需求1:打印规范
需求2:编译控制
不需要通过控制台命令放开打印

实现


#define dbg 0
#define inf 1
#define wrn 2
#define err 3
#define crt 4
#define LOG_LEVEL dbg

#define _Log(mod, lv, fmt, ...) \
    do{ \
    if (lv>=LOG_LEVEL) {\
    printf("[%s][%s][%s][%d]:" fmt "\n", mod, #lv, __func__, __LINE__, ##__VA_ARGS__); \
    }\
    } while(0)

#endif

__file__的名称太长,可以自定义__filename__宏,在编译脚本中输入宏
Makefile:

CXX_FLAGS+=-D__FILENAME__='\"$(subst $(SOURCE_PREFIX)/,,$(abspath $<))\"'"

cmake:

# 2选1
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -D__FILENAME__='\"$(subst ${CMAKE_SOURCE_DIR}/,,$(abspath $<))\"'")
# 2选1
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -D__FILENAME__='"$(notdir $<)"'")
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值