初学者:介绍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的使用

可能你曾经有过Windows编程的经验,通常在你调试程序的时候,如果希望看到某个中间结果,你会习惯使用MessageBox来显示中间的结果。 有了Cocoa的NSLog,你在写Cocoa程序的时...
  • u010013695
  • u010013695
  • 2013年09月09日 14:37
  • 869

NSLog的使用方法

///////////////////////////////// //////////////////////////////// 2、NSLog的使用方法 NSLog是cocoa框架中提供的一个方...
  • u012701023
  • u012701023
  • 2015年07月14日 19:54
  • 679

iOS开发, 关于nslog的几种用法

DEBUG和RELEASE要分开,RELEASE时log打印要取消 方法一:简单直接,用几行代码搞定,简洁但功能少 #ifdef DEBUG #define NSLog(...) ...
  • yuanyuan1314521
  • yuanyuan1314521
  • 2015年12月15日 17:45
  • 1158

介绍 NSLog 的使用

  • u012894631
  • u012894631
  • 2013年12月03日 21:38
  • 548

介绍NSLog的使用

转自:http://blog.csdn.net/NickTang/article/details/6264713# NSLog的定义 NSLog定义在NSObjCRuntime...
  • lx31433
  • lx31433
  • 2014年09月04日 00:14
  • 197

Swift学习,NSLog的使用(一)

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

如何使NSLog只在Debug模式下有效

1#ifndef __OPTIMIZE__    2#define NSLog(...) NSLog(__VA_ARGS__)    3#else    4#define NSLog(...) ...
  • u010105969
  • u010105969
  • 2016年02月27日 21:53
  • 1257

封装NSLog打印调试信息

适用于debug模式想输出log,release模式不输出log。   解决步骤: 修改-Prefix.pch ,增加以下的宏代码 #ifdef DEBUG   ...
  • u011010305
  • u011010305
  • 2016年10月09日 16:12
  • 199

nslog 输出编码转义

- (NSString *)descriptionWithLocale:(id)locale {     NSMutableString *string = [[NSMutableStri...
  • zhanghaibo369
  • zhanghaibo369
  • 2017年02月15日 09:18
  • 142

Swift自定义NSLog

Swift
  • Lucy_xiao
  • Lucy_xiao
  • 2016年08月12日 18:34
  • 429
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:初学者:介绍NSLog的使用
举报原因:
原因补充:

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