您的位置:首页 > 移动开发 > Objective-C

Objective-c——NSLog

2013-11-15 00:17 246 查看


说明:

在Objective-C中,NSLog相当于C语言中的printf,常用于文字输出,并支持自动换行。


NSLog的定义

NSLog定义在
NSObjCRuntime.h
中,如下所示:
void NSLog(NSString *format, …);
基本上,NSLog很像printf,同样会在console中输出显示结果。不同的是,传递进去的格式化字符是NSString的对象,而不是char *这种字符串指针。


格式

表1的NSString格式化方法和CFString字符串格式化功能支持的格式说明符

符号描述
%@Objective-C的对象
%%‘%’  字符
%d, %D,%i有符号32位整数(INT)
%u, %U32位无符号整型(unsigned int类型)
%hi符号的16位整数(short )
%hu16位无符号整数(unsigned short)
%qi符号64位整数(long long )
%qu64位无符号整数(unsigned long long )
%x32位无符号整型(unsigned int类型),打印十六进制数字(0-9),小写a-F
%X32位无符号整型(unsigned int类型),打印十六进制数字0-9和大写字母A-F
%qx64位无符号整数(unsigned long long),打印十六进制数字(0-9),小写a-F
%qX打印 64位无符号整数(unsigned long long),使用十六进制数字0-9和大写字母A-F
%o, %O32位无符号整型(unsigned int类型),打印八进制
%f64位浮点数(double )
%e64位浮点数(double),打印科学记数法使用小写字母e来引入指数
%E64位浮点数(double),打印科学记数法,用一个大写字母E,引入指数
%g64位浮点数(double ),印刷%e 的风格,   当指数小于-4或大于等于精度, 否则%f 的风格 
%G64位浮点数(double ),印刷%E 的风格,   当指数小于-4或大于等于精度, 否则%f 的风格 
%c8位无符号字符(unsigned char ),打印  NSLog的()  作为一个ASCII字符,或者如果不是一个ASCII字符,八进制格式  \
\ DDD  或Unicode十六进制格式  \ \ udddd,  ð  是一个数字的
%C16位的Unicode字符(unichar ),NSLog的()  作为一个ASCII字符,或者,如果不是一个ASCII字符,印制  八进制格式  \
\ DDD  或Unicode十六进制格式  \ \ udddd,  ð  是一个数字的
%s8位无符号字符数组的空值终止的。  %s的  解释,例如,其在系统中的编码,而不是输入UTF-8。
%S16位的Unicode字符NULL结尾的数组
%pvoid指针(void *的十六进制数字0-9),印刷和小写A-F,与一家领先的  为0x
%L长度修饰符指定,一个  一个,  à,  ë ë,  F,   F
, 克,或  ĝ的  转换说明适用于
 long double   参数
%a64位浮点数(double),印在科学记数法与一家领先的  为0x  和一个十六进制数字,小数点前使用小写的  p  引进指数
%A64位浮点数(double),印在科学记数法与一家领先的  0X  和一个十六进制数字,小数点前用一个大写的  P  引入指数
%F64位浮点数(double),印在十进制记数法
%z长度修饰符指定以下的  D,  í,  ó,  ü,  x,或 X  转换说明适用于一个  为size_t  或相应的有符号整数类型参数
%t长度修饰符指定ð,  ,  í,  O,  U,  X,或 X  转换说明适用一个  ptrdiff_t  或相应的无符号整数类型参数
%j长度修饰符指定以下的  D,  í,  ó,  ü,  x,或 X  转换说明适用于一个的  将intmax_t  或  uintmax_t  参数


示例

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 );

结果

2013-10-09 15:29:08.523 ocTest[2192:303] Hello, World!

声明: 本文采用 BY-NC-SA 协议进行授权.
转载请注明转自: Objective-c——NSLog

此条目发表在objective-c分类目录,贴了NSLogobjective-c标签。将固定链接加入收藏夹。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  NSLog objective-c