NSLog

2018-01-17 10:41:10 浏览数 (1)

在Objective-C中,NSLog相当于C语言中的printf,常用于文字输出。

1.NSLog定义

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

void NSLog(NSString *format, …);

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

2.示例

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

3.格式

NSLog的格式如下所示:

%@

对象

%d, %i

整数

%u,%z

无符整形

%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 人点赞