黑马程序员技术交流社区

标题: OC部分基础语法总结(一) [打印本页]

作者: HiGodl    时间: 2015-9-22 20:58
标题: OC部分基础语法总结(一)
OC部分基础语法总结(一)
        从OC的Hello world入手
  1. #import <Foundation/Foundation.h>

  2.         int main(int argc, const char * argv[]) {
  3.                 @autoreleasepool {
  4.                         NSLog(@"Hello world");
  5.                 }
  6.                 return 0;
  7.         }
复制代码


       
        首先C中的是使用#include,而为什么到了OC中却使用#import呢?
                 include和import都是引入头文件
                 include需要使用预处理指令防止重复包含,如果没有写则无法防止重复包含
                 import引入的头文件可以防止重复包含、
       
        NSLog打印输出
                NSLog是cocoa的框架中提供的一个方法
                NSLog定义在NSObjCRuntime.h中,而引入Foundation.h头文件就相当于引入了Foundation框架中的所有头文件,包含NSObjCRuntime头文件
               
                NSLog与printf使用的差异
                        1、NSLog 会自动换行,而printf不会自动换行
                        2、NSLog 会自动输出时间等项目信息,printf不会
                        3、NSLog 函数的参数是一个NSString 对象
                                        printf是一个字符串常量指针
                                       
                NSLog格式化输出的问题
                同c语言一样可以格式化输出,OC向下兼容C语言,所以可以在oc中使用C语言
                NSLog输出字符串与C语言不同,oc中有自己特有的字符串表示方法
                        NSString *str = @“fhjkada”;
                        NSLog(@"%@",str);
                不能用printf打印NSString, NSString是OC特有的,C不支持
       
        @符号的使用       
                在OC中“@”有特殊用法
                   1)@"" 表示将一个C的字符串转化为OC中的字符串对象NSString
                   2)@标识符   OC中大部分关键字都是以@开头的
                  


作者: 黑白世界    时间: 2015-9-23 02:28
明天我也可以看OC啦应该哈哈
作者: liminghui    时间: 2015-9-23 09:36
写的不错
作者: 秦忠增    时间: 2015-9-24 13:56
非常有用,刚自学到import




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2