首页 热点资讯 义务教育 高等教育 出国留学 考研考公
您的当前位置:首页正文

关于NSLog控制台打印不完整

2024-12-20 来源:花图问答

//通过宏定义用printf()函数来替换原来的NSLog,(该修改仅针对开发模式生效)

#ifndef __OPTIMIZE__

#define NSLog(...) printf("%f %s\n",[[NSDate date]timeIntervalSince1970],[[NSString stringWithFormat:__VA_ARGS__]UTF8String]);

#endif


#ifdef DEBUG

#define SLog(format, ...) printf("class: <%p %s:(%d) > method: %s \n%s\n", self, [[[NSString stringWithUTF8String:__FILE__] lastPathComponent] UTF8String], __LINE__, __PRETTY_FUNCTION__, [[NSString stringWithFormat:(format), ##__VA_ARGS__] UTF8String] )

#else

#define SLog(format, ...)

#endif


总结一下吧

#define CLog(format, ...)  NSLog(format, ## __VA_ARGS__)

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

这两个宏就可以解决了。

显示全文