扩大
缩小
  

02第一个OC程序

一、打开XCode4.6.3,新建项目

二、选择Application下的命名行项目

三、输入项目名称,选择Foundation框架创建项目,点击Next

 

四、二话不说、点击Run、启动我们创建的项目

可以看到输出结果:

 

好了,第一个OC应用创建完毕!接下来解释下Main.m的内容:

1、#import是一个导入命令,类似于C语言的#include命令,但是相对于#include而言,#import有效的处理了重复导入的问题,在C语言中也提到过如何通过条件编译解决重复导入,而在OC中你不需要处理了,#import已经自动进行了重复处理;

与#include类似,导入系统类库使用<>,如#include <stdio.h>,导入自定义类库使用””

2、Main函数头部引入了Foundation.h是Foundation框架中的头文件,这是OC中的一个基础类库,所以基本上后面我们用到的所有OC的代码都需要引入这个类库(引用一般是引入头文件),因为我们也是用到了NSLog()这个函数。

Foundation.h的位置

3、@autoreleasepool这是OC的关键字,作用在于这个关键字后面大括号 包含的内容,程序会自动回收,不需要手动去释放,类似C#using(){}一样的垃圾回收机制,但是原理上不一样

4、NSLog是标准的输出函数,累死于C语言的printf()和C#的Console.WriteLine()函数,但是它会自动换行,它同样支持格式输出(例如%i表示输出整形数据,%f输出浮点型数据),这个函数在Fundation.h中声明

5、OC的字符串都需要加@"",例如:@”Hello,World!”,是一个字符串常量

 

补充下上章说的OC的基本数据类型:

1、BOOL类型(包含两个值YES和NO),其实OC的BOOL类型就是整数1和0

2、id类型,是一个对象类型,可以代表所有对象,这个跟C#的var相似

3、NSString字符串类型,是Fundation定义的。因为在C语言,代表一个字符串只能通过指针的方式来指定,例如char *,在OC直接就是NSString *str=@"哈哈";

NSLog(@"object is =%p",nil);

4、我们看到%p,这就是格式符,就是通过替换占位的方式,把值替换到这个位置,下面列出常用的格式符

%f 小数的形式输出单精度、双精度的浮点数 %Lf 长双精度类型

%@ 输出一个字符串

%p 输出一个指针对象(对象类型)

%c 输出一个字符

%x 以不带符号的十六进制输出整数

%o 以不带符号的八进制输出整数

%u 输出无符号整形

%i 以十进制形势输出整数  %hi 输出短整数  %li 输出长整数

 

5、在C语言或者OC都可以用%i或者%d来格式化,只有在使用Scanf()输入的时候二者才有区别,%d会被编译器解释为Decimal intergeer所有输入010会被解释为整型10,而%i的话,会将前面的0或者0x认为输入的是八进制或者是十六进制

6、%p就是代表指针地址,在32位的编译器对于指针类型使用%x和%p输出结果都是一样的,但是后者会在前面加上“0X",注意在64位编译器下由于指针长度8byte,而整形只有4byte所以%x输出的内容只是%p的低位数据

 

posted @ 2015-10-30 12:02  风筝遇上风  阅读(189)  评论(0编辑  收藏  举报