A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© ldk1991125 中级黑马   /  2016-6-30 13:53  /  900 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

第五点  NSLog函数的使用方法
1.NSLog的介绍
  NSLog是cocoa的框架中提供的一个函数(方法)
  NSLog的定义:定义在NSObjCRuntime.h中
  void NSLog(NSString *format,...);
  基本上,NSLog很像printf,同样可以在console中输出显示结果。不同的是,传递出去的格式化字符是NSSting的对象,而不是chat *这种字符串指针

NSLog和printf使用的差异:(面试题)
  1)NSLog会自动换行,而printf不会
  2)NSLog会自动输出时间等项目信息,而printf不会输出调试信息
  3)NSLog函数的参数是一个NSString对象
     printf输出的是一个字符串常量指针
2.NSLog格式化输出的问题
  int a=5;
  float f1=2.3f;
  double d1=3.14;
  char ch='x';
  NSLog(@"%d,%.2f,%.2f,%c",a,f1,d1,ch)
NSLog可以实现格式化输出,但不能用于输出字符串
  OC中有自己特有的字符串表示方法
  NSString *str=@"";
  NSLog(@"%@",str);
是否可以使用printf打印str?不能!NSString是OC特有的,C不支持
OC对C向下兼容

2.NS前缀
  前缀:在OC应用中,所有的类名都必须是全局唯一的。由于很多不同的框架中会有一些相似的功能,所以在名字上可能会有重复(users,views,requests/responses等等),所以苹果官方文档规定类名需要有2~3个字母作为前缀。
  类前缀:苹果官方建议两个字母作为前缀的类名是为官方的库和框架准备的,而对于作为第三方开发者的我们,官方建议使用3个或者更多的字母作为前缀去命名我们的类。
  NS来自于NeXTStep的一个软件NeXT Software
  OC中不支持命名空间(namespace)
  NS是为了避免命名冲突而给的前缀
  看到NS前缀就知道是cocoa中的系统类的名称

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马