標籤:
OC語言前期準備
一、OC簡介
Oc語言在c語言的基礎上,增加了一層最小的物件導向文法,完全相容C語言,在OC代碼中,可以混用c,甚至是c++代碼。
可以使用OC開發mac osx平台和ios平台的應用程式。
拓展名:c語言-.c OC語言.-m 相容C++.-mm
註:其實c語言和oc甚至任何一門語言都只是我們為了實現一些功能,達到一些效果而採用的工具,拋開文法的差別外,我想最重要的應該是在解決問題的時候考慮的角度和方法不一樣而已,然而這也構成了學習一門語言的重要性。
二、文法預覽
(一)關鍵字
基本上所有的關鍵字都是以@開頭的(為了與c語言的關鍵字區分開來),如@interface @implementation @public等,少部分沒有以@開頭,如id,_cmd等
(二)字串以@開頭
C語言字串:“hello”
OC語言字串:@“hello”
(三)其他文法
基本類型:5種,增加了布爾類型
Nil相當於是null,也就是0。
螢幕輸出:NSLog(@“hello”);//自動換行
NSLog(@“age is %d”,2);
三、OC程式開發過程
#import預先處理指令有兩個作用:(1)與#include一樣,拷貝檔案內容(2)可以自動防止檔案的內容被重複拷貝
程式編譯串連過程:
源檔案(.m)---(編譯)---->目標檔案(.0)-----(連結)---->可執行檔(.out)
Foundation架構。如果要使用架構中的所有標頭檔那麼應該怎麼辦?包含架構的主標頭檔。主標頭檔是一個架構中最主要的標頭檔,每個架構的主標頭檔名和架構名一致。
如#import<foundation/foundation.h>
運行過程如下:
(1)編寫OC源檔案 .m .c
(2)編譯檔案 cc -c xx.m xxx.c
(3)連結 cc xx.o xxx.o -framework Foundation
(4)運行 ./a.out
四、類型補充
Int main()
{
BOOL b=YES;
BOOL b1=NO;
BOOL b2=1;// YES
BOOL b3=2;// NO
NSLog(@“%i”,b);
}
BOOL類型與其他類型的用法一致,BOOL類型的本質是char類型的,定義如下:
Typedef signed char BOOL
宏定義:
#define YES (BOOL)1
#define NO (BOOL)0
布爾類型的輸出一般當做整數來用。
李洪強iOS開發之OC語言前期準備