NSLog的使用

1.NSLog会将字符串打印在两个地方:操作系统的控制台和IDE的控制台。

2.对于NSLog来说,它打印的一个目的地并非控制台,而是系统文件“system.log”。

         它另一个输出的目的地并非IED的控制台,而是stderr。

日志描述

- (NSString *)description
 这个接口是所有NSObject及其子类都拥有的方法,NSLog参数中的%@默认就是去读取这个方法的返回值并打印出来,但是大部分的子类都没有特地重写这个方法,导致打印的结构式直接以父类NSObject中对于“description”接口的实现内容作为输出的,即对象的指针。
时间: 2024-10-13 05:35:15

NSLog的使用的相关文章

NSLog 去除上线版本

创建pch 文件 STEP1: #ifdef DEBUG #   define NSLog(...) NSLog(__VA_ARGS__) #else #   define NSLog(...) #endif #define ALog(...)  NSLog(__VA_ARGS__) STEP2: a. TARGETS 中 Build Settings 设置 Apple LLVM7.1 - Preprocessing 里面 Preprocessor Macros : 如果在测试版本打印日志,De

description方法 oc 就是NSLog使用

使用场景: 父类的-description默认是调用返回的是“类名+内存地址:” 我们需要重写这个方法: NSLog输出C语言字符串的时候,不能有中文: 打印当前的行号:NSLog(@“%d”,_LINE_); 打印当前文件所处的文件路径:printf(@“%s\n”,_FILE_); 打印指针变量地址:NSLog(@“%p”,&p); 打印对象地址:NSLog(@“%p”,p); 输出当前函数名:NSLog(@“%s\n”,_func_);

【iOS】NSLog 打印 BOOL 类型值

这个问题以前没在意,刚偶然打印,发现有些问题,上网查了下,发现是这么搞的: NSLog(@"%@", isEqual?@"YES":@"NO");

Object-C自定义对象NSLog输入信息

http://blog.cnrainbird.com/index.php/2012/07/19/object-c_zi_ding_yi_dui_xiang_nslog_shu_ru_you_yong_xin_xi/ 继续昨天的故事关于Object-C面向对象开发自定义完对象以后,想查看对象的信息,于是我们直接NSLog: NSLog(@"%@",_LocalVideo); 结果输出的是一个内存地址,这肯定不是我们想要的. 2012-07-19 09:37:46.933 umiwiFor

0-C相关01:NSlog函数介绍。

  NSlog()函数介绍: 首先:NSlog()函数是cocoa的框架中提供的一个方法: 下图中最上方是它在Xcode中的路径: : 同样都是输出函数.下边我们来看一下,在O-C中NSlog()和在 c 语言中的printf的一些不同: 1.nslog 和printf都可以输出字符串到控制台.@"1213244" @开头表示oc的字符串. 2.NSlog()在打印时能自带一次自动换行,后者没有,想换行需要\手动添加"\n".当然在NSlog()中也可以手动添加&q

iOS开发中关于nslog的几种流行做法小结

不管哪种方法,都必须在PCH文件中做下宏定义 DEBUG和RELEASE要分开,RELEASE时log打印要取消 方法一:简单直接,用几行代码搞定,简洁但功能少 #ifdef DEBUG #define NSLog(...) NSLog(__VA_ARGS__) #define debugMethod() NSLog(@"%s", __func__) #else #define NSLog(...) #define debugMethod() #endif 这个DEBUG在哪设置呢,

NSLog的使用方法

///////////////////////////////// //////////////////////////////// 2.NSLog的使用方法 NSLog是cocoa框架中提供的一个方法 NSLog的定义 NSLog定义在NSObjCRuntime.h中 基本上,NSLog很像printf,同样会在console中输出显示结果.不同的是,传递进去的格式化字符是 NSString的对象,而不是chat *这种字符串指针 // //  main.m //  hello world /

NSLog

#define NSLog(format, ...)   fprintf(stderr, "<%s : %d> %s\n",                                           \ [[[NSString stringWithUTF8String:__FILE__] lastPathComponent] UTF8String],  \ __LINE__, __func__);                                 

iOS中NSLog调试的使用技巧

在PCH文件中添加如下代码: #ifdef __OBJC__ //保证代码只会在OC中引用 #ifdef DEBUG #define NSLog(fmt, ...) NSLog((@"%s [Line %d] " fmt), __PRETTY_FUNCTION__, __LINE__, ##__VA_ARGS__) #else #define NSLog(...) #endif #endif NSLog只在debug模式下打印信息,在release模式下则不会.

NSLog设置不打印

在调试应用程序的时候经常需要进行打印需要的信息,但是当打印的地方多了之后在真机上跑应用程序就会相应的慢很多,输出语句多了之后会在很大程序上影响应用程序的性能.这里我们可以定义一个宏来控制是否输出调试信息. 在Release模式下禁止输出调试信息 因为NSLog的输出还是比较消耗系统资源的,而且输出的数据也可能会暴露出App里的保密数据,所以发布正式版时需要把这些输出全部屏蔽掉. 我们可以在发布版本前先把所有NSLog语句注释掉,等以后要调试时,再取消这些注释,这实在是一件无趣而耗时的事!还好,还