初学者:介绍NSLog的使用

转载 2011年01月15日 16:37:00

可能你曾经有过Windows编程的经验,通常在你调试程序的时候,如果希望看到某个中间结果,你会习惯使用MessageBox来显示中间的结 果。

有了Cocoa的NSLog,你在写Cocoa程序的时候,就可以无需每次都调用NSAlert来观察中间结果了。

 

NSLog的定义

NSLog定义在NSObjCRuntime.h中,如下所示:

void NSLog(NSString *format, …);

基本上,NSLog很像printf,同样会在console中输出显示结果。不同的是,传递进去的格式化字符是NSString的对象,而不是 chat *这种字符串指针。

示例

NSLog可以如下面的方法使用:

NSLog (@"this is a test");

NSLog (@"string is :%@", string);

NSLog (@"x=%d, y=%d", 10, 20);

但是下面的写法是不行的:

int i = 12345;

NSLog( @"%@", i );

原因是, %@需要显示对象,而int i明显不是一个对象,要想正确显示,要写成:

 

int i = 12345;

NSLog( @"%d", i );

格式

NSLog的格式如下所示:

 

  • %@     对象
  • %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位双字

相关文章推荐

介绍NSLog的使用

NSLog的定义 NSLog定义在NSObjCRuntime.h中,如下所示: void NSLog(NSString *format, …); 基本上,NSLog很像printf,同样会在co...

iOS开发之NSLog的使用

NSLog的使用

(暴力调试控的福音)在ios iphone编程中使用封装的NSLog来打印调试信息

转载自:http://blog.csdn.net/remote_roamer/article/details/7107320 使用NSLog的一个风险是:它的运行会占用时间和设备资源。 简单而...

iOS开发:NSLog使用技巧

前提:在XCode做开发调试时往往需要打印一些调试信息做debug用,大家知道当打印信息的地方多了之后在模拟器上跑可能不会有什么问题,因为模拟器用的是电脑的硬件但是当应用跑在设备上时这些输出语句会在很...

1、使用快速枚举语法实现: //构建一个NSSMutableArray数组,用@”1”至@”100”进行填充。以NSLog依次打印数组中的内容,将此数组分为奇偶两数组,再打印两新数组中的元素。

1、使用快速枚举语法实现: //构建一个NSSMutableArray数组,用@”1”至@”100”进行填充。以NSLog依次打印数组中的内容,将此数组分为奇偶两数组,再打印两新数组中的元素。 ...

NSLog使用详解与性能分析

NSLog 使用 在XCode做开发调试时往往需要打印一些调试信息做debug用 NSLog 性能问题 它的运行会占用时间和设备资源。当打印信息的地方多了之后在模拟器上跑可能不会...

Swift学习,NSLog的使用(一)

我的开发环境 操作系统:OS X EI Capitan 10.11.1 (15B42) 电脑型号:MacBook Pro(Retina 显示屏,15 英寸,2013 年末) 处理器:2.3 GHz I...

使用PCH及巧妙使用NSLog

看到别人的博客写的不错,做个人的备忘 在xcode6.01以前是有prefix.pch文件的,Xcode6.01以后就没有了,但是可以自己去创建! 前提:在XCod...

在ios iphone编程中使用封装的NSLog来打印调试信息

使用NSLog的一个风险是:它的运行会占用时间和设备资源。 简单而粗暴的解决方案是:在release前,将所有的NSLog注释掉。简单有效,但副作用是:下次你要调试时,又得将NSLog一个个取消注释...

iphone编程中使用封装的NSLog来打印调试信息 【转】

使用NSLog的一个风险是:它的运行会占用时间和设备资源。 简单而粗暴的解决方案是:在release前,将所有的NSLog注释掉。简单有效,但副作用是:下次你要调试时,又得将NSLog一个个取消...
  • henry85
  • henry85
  • 2013年08月17日 11:25
  • 397
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:初学者:介绍NSLog的使用
举报原因:
原因补充:

(最多只允许输入30个字)