美文网首页
iOS NSlog去掉时间戳及其他输出样式

iOS NSlog去掉时间戳及其他输出样式

作者: 蓝色的雪啦 | 来源:发表于2016-11-08 15:05 被阅读96次

1.一般项目中我的NSLog会在Prefix.pch文件添加如下代码,已保证在非调试状态下NSLog不工作

#ifdef DEBUG

#define NSLog(...) NSLog(__VA_ARGS__)

#else

#define NSLog(...)

#endif

2.在项目中如果没做任何处理的话会输出如下信息,前面有一个时间戳

2014-11-0708:25:40.885zcsy[673:8937]cell的高度258.684998

我们修改下宏如下:

#ifdef DEBUG

#define NSLog(FORMAT, ...) fprintf(stderr,"%s\n",[[NSString stringWithFormat:FORMAT, ##__VA_ARGS__] UTF8String]);

#else

#define NSLog(...)

#endif

经过上面的修改我们可以输出 纯净的内容如下:

cell的高度258.684998

我们可以用更好的版本我推荐用这个打印我们的日志:

#ifdef DEBUG

#define NSLog(FORMAT, ...) fprintf(stderr,"%s:%d\t%s\n",[[[NSString stringWithUTF8String:__FILE__] lastPathComponent] UTF8String], __LINE__, [[NSString stringWithFormat:FORMAT, ##__VA_ARGS__] UTF8String]);

#else

#define NSLog(...)

#endif

这样我们的输出就是这样:

Objective-C

它会输出文件名,和打印的具体行号

DealItemCell.m:307cell的高度258.684998

相关文章

网友评论

      本文标题:iOS NSlog去掉时间戳及其他输出样式

      本文链接:https://www.haomeiwen.com/subject/rwacyttx.html