nslog()强大的功能这里就不多说了,笔者从c#转过来,难免会有些陌生。在c#中用format("{0}",xx}来进行占位,下面就来讲讲在oc中的格式字符;
- d:带符号的十进制形式输出整数(正数不输出符号)
- o:以八进制无符号形式输出整数(不输出前缀)
- x:以十六进制无符号形式输出整数(不输出0x)
- u:以无符号的十进制输出整数
- c:以字符形式输出,只输出一个字符
- s:输出c风格的字符串
- f:以小数形式输出浮点数,默认输出和位小数
- e:以指针形式输出浮点数,数字部份默认输出6位小数
- g:自动选用%f或%e其中之一,保证输出宽度较短的格式,并且不会输出无意义的0
- @:输出objcect对象
*在%与格式之间还可插入一下附加符号
- l(字母) :可在格式字符d、o、x、u之前,用于输出长整型整数;也可以在f、e、g之前,用于输出长浮点型数
- m(代表一个正整数):指定输出数据所占的最小宽度
- n:对于浮点数,表示输出n位小数;对字符串,表示街区的字符个数
- -:表示输出的数值向左边对其
- 下面举个栗子:
- 代码如下:
int a=;
NSLog(@"==%d==",a);
NSLog(@"==%9d==",a);//输出占位符
NSLog(@"==%-8d==",a);//左对齐*注:%-占位符要写在%符号的后面,如果写在前面就不会起作用
NSLog(@"==-%8d--",a);//错误的
NSLog(@"==%o",a);//八制制
double s=3.141592653;
NSLog(@"==%f==",s);//以小数型式输出浮点型 NSString *name=@"海格力斯";//字符串是指针类型,如c#中是特殊类型一样(引用类型)
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] ==742017-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