Objective - C基础: 第一天 - 1. 第1, 2个OC程序
前言
前面我们已经讲完了C语言的基础, 终于进入到Objevtive - C啦, 这里我们简称为OC, OC是什么? 简单来讲, 它是一门基于C语言演变而来的一门面向对象的语言, 在C语言上添加了属于自己的特色, 可以说OC是完全兼容C语言的.
开始
现在我们来看看例子:
#include <stdio.h> int main() { printf(@"第二个OC程序\n"); return 0; }
有人会有疑问, 这不是C语言吗? 为什么叫第一个OC程序呢? 其实很简单, 我们来看看下面的示意图.
看完上面的图, 相信大家就明白了, 首先, 这写代码是写在.m文件里面的, 这个.m文件就是我们OC的代码执行文件, 刚刚我们也知道了, OC是完全兼容C的, 所以在OC的执行文件里写C语言代码是完全可行的, 在这段代码里, 可以不写后面那句(-framework Foundation), 因为它引入的不是OC头文件.
下面我们继续来看另外一个例子:
PS:必须得写(-framework Foundation) 这句代码, 切记, 要注意大小写.
#import <Foundation/Foundation.h> int main() { NSLog(@"第二个OC程序\n"); return 0; }
这个例子就是真正的OC代码, 首先它的标准输入输出已经从printf()变成了NSLog, 并且它的字符串输入也从("XX")变成了(@"XX"), 而且它的头文件导入也改变了另外一种方式, 也就是Foundation/Foundation.h, 而#include也变成了#import, 这些细节都要我们去注意的, 当然一开始不记得也很正常, 不需要死记硬背, 后面多敲代码就可以了
还有一些小细节, 大家注意看看:
1.#import的用途:
1> 跟#include一样,拷贝文件的内容
2> 可以自动防止文件的内容被重复拷贝
2.主头文件
1> 主头文件:最主要的头文件,名字一般跟框架名称一样,包含了框架中的所有其他头文件
2> Foundation框架的主头文件名称就是Foundation.h
3> 只需要包含Foundation框架主头文件,就可以使用整个框架的东西
3.运行过程
1> 编写OC源文件:.m、.c
2> 编译:cc -c xxx.m xxx.c
3> 链接:cc xxx.o xxx.o -framework Foundation
(只有用到了Foundation框架才需要加上-framework Foundation)
4> 运行:./a.out