nslog()强大的功能这里就不多说了,笔者从c#转过来,难免会有些陌生。在c#中用format("{0}",xx}来进行占位,下面就来讲讲在oc中的格式字符;
d:带符号的十进制形式输出整数(正数不输出符号)
o:以八进制无符号形式输出整数(不输出前缀)
x:以十六进制无符号形式输出整数(不输出0x)
u:以无符号的十进制输出整数
c:以字符形式输出,只输出一个字符
s:输出c风格的字符串
f:以小数形式输出浮点数,默认输出和位小数
e:以指针形式输出浮点数,数字部份默认输出6位小数
g:自动选用%f或%e其中之一,保证输出宽度较短的格式,并且不会输出无意义的0
@:输出objcect对象
*在%与格式之间还可插入一下附加符号
int a=60;
NSLog(@"==%d==",a);
NSLog(@"==%9d==",a);
NSLog(@"==%-8d==",a);
NSLog(@"==-%8d--",a);
NSLog(@"==%o",a);
double s=3.141592653;
NSLog(@"==%f==",s);
NSString *name=@"海格力斯";
NSLog(@"%@",name);
NSDate *date=[[NSDate alloc] init];
NSLog(@"%@",date);
---------结果如下----------
2017-03-14 00:11:49.451367 Test[1713:79881] ==60==
2017-03-14 00:11:49.451597 Test[1713:79881] == 60==
2017-03-14 00:11:49.451623 Test[1713:79881] ==60 ==
2017-03-14 00:11:49.451635 Test[1713:79881] ==- 60--
2017-03-14 00:11:49.451649 Test[1713:79881] ==74
2017-03-14 00:11:49.451669 Test[1713:79881] ==3.141593==
2017-03-14 00:11:49.451983 Test[1713:79881] 海格力斯
2017-03-14 00:11:49.457270 Test[1713:79881] 2017-03-13 16:11:49