1. 第一个oc语言程序
1 #import <Foundation/Foundation.h>
2
3 int main(int argc, const char * argv[])
4 {
5
6 @autoreleasepool {
7
8 // insert code here...
9 NSLog(@"Hello, World!");
10
11 }
12 return 0;
13 }
#import 相当于c语言中的#include,也是预处理指令,它的意义就是将foundation框架中的foundation.h头文件导入到源程序中。
在C语言中用include来包含一个头文件,但是存在导入重复的问题,但是用#import不会出现导入重复,因为import关键字会自动检查重复文件。可以自动防治一个头文件被多次引用。
Import <>这是用来引用oc函数库里的内容。
Import“”这是用来引用程序员自己开发的内容。
Foundation框架中包含了很多oc语言运行要用到的函数。如nslog函数,字符串处理函数nsstring。
Foundation 框架:每个框架都包含了上百个头文件,这其中有一个主头文件,其中包含着所有元素的头文件。例如foundation框架中,foundation.h文 件就是主头文件。通过import调用foundation.h文件 就可以获得该框架所有的头文件,进而访问该框架的所有功能。
@autoreleasepool语句是内存回收关键词,不同于java语言有内存自动回收功能,oc语言中需要手动释放内存。在oc中需要将代码都放在@autoreleasepool关键字中。
程序的入口点依然是main函数。
Nslog函数是做日志输出功能的,它可以将传入函数的字符串输出到控制台上。
函数@“HELLO WORLD”是oc的字符串对象,不是C语言字符串,所有的oc语言字符串前面都会加@。Nslog输出之后会自动换行。Nslog函数同c语言一样都支持格式符的。
NSlog()函数是Cocoa框架中的控制台输出函数,他和c语言中的printf函数很类似。其中NS是方法前缀名,NS其实是nextstep的简称。而OC语言中在字符串前面添加@,意思是告诉编译器把这个字符串当做是oc的NSstring类,而不是c语言的字符数组。