NSLOG的描述

来源:互联网 发布:网络层的协议内容 编辑:程序博客网 时间:2024/05/16 13:40

        看NSLog的文档,第一句话就说:Logs an error message to the Apple System Log facility.,所以首先,NSLog就不是设计作为普通的debug log的,而是error log;其次,NSLog也并非是printf的简单封装,而是Apple System Log(后面简称ASL)的封装。

注释nslog :不用你把所有NSLog的删除或注释,直接修改#if判断的值就行了(1执行,0不执行)


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

这样可以方便自己调试


其格式:

%@                   对象

%d, %i               整数

%u                    无符整形

%f                     浮点/双字

%x, %X              二进制整数

%o                    八进制整数

%zu size_t

%p                    指针

%e                    浮点/双字 (科学计算)

%g                    浮点/双字

%s C                字符串

%.*s                  Pascal字符串

%c                    字符

%C                    unichar

%lld                   64位长整数(long long)

%llu                   无符64位长整数

%Lf                    64位双字


0 0
原创粉丝点击