天天看點

黑馬程式員——OC語言初學一、 OC簡介二、 OC文法預覽三、 OC程式的開發過程

------- android教育訓練、IOS教育訓練、期待與您交流! ----------

一、 OC簡介

Ø C語言的基礎上,增加了一層最小的面向對象文法

Ø 完全相容C語言

Ø 可以在OC代碼中混入C語言代碼,甚至是C++代碼

Ø 可以使用OC開發Mac OS X平台和iOS平台的應用程式

二、 OC文法預覽

1. 關鍵字

Ø 基本上所有關鍵字都是以@開頭

Ø 下面列舉一些常見的關鍵字,看一眼就行了,不用去翻資料查找它們的含義

@interface、@implementation、@end 

@public、@protected、@private、@selector 

@try、@catch、@throw、@finally  

@protocol、@optional、@required、@class

@property、@synthesize、@dynamic

self、super、id、_cmd、__block、__strong、__weak、

2. 字元串以@開頭

比如@"Hello"是OC中的字元串,而"Hello"則是C語言中的字元串

三、 OC程式的開發過程

與C語言類似:

 跟C語言一樣,OC程式的入口依然是main函數,隻不過寫到一個.m檔案中。比如這裡寫到一個main.m檔案中(檔案名可以是中文)

#include <stdio.h>

int main()

{

    printf("第1個OC程式\n");

    return 0;

}

2. 終端指令

Ø 編譯cc –c main.m

Ø 連結cc main.o

Ø 運作./a.out

來點跟C語言不一樣的,使用NSLog函數輸出内容

#import <Foundation/Foundation.h>

int main()

{

    NSLog(@"第2個OC程式");

    return 0;

}

2. 終端指令

Ø 編譯cc –c main.m

Ø 連結cc main.o –framework Foundation

Ø 運作./a.out

3. NSLog與printf的差別

Ø NSLog接收OC字元串作為參數,printf接收C語言字元串作為參數

Ø NSLog輸出後會自動換行,printf輸出後不會自動換行

Ø 使用NSLog需要#import <Foundation/Foundation.h>

Ø 使用printf需要#include <stdio.h>

4. #import的作用

Ø 跟#include一樣,用來拷貝某個檔案的内容

Ø 可以自動防止檔案内容被拷貝多次,也就以為着頭檔案中不用加入下面的預處理指令了

#ifndef _STDIO_H_

#define_STDIO_H_

#endif

5. Foundation架構的作用

Ø 開發OC、iOS、Mac程式必備的架構

Ø 此架構中包含了很多常用的API(應用程式設計接口)

Ø 架構中包含了很多頭檔案,若想使用整個架構的内容,包含它的主頭檔案即可

#import <Foundation/Foundation.h>

6. BOOL的使用

Ø BOOL類型的本質

typedef signed char BOOL;

Ø BOOL類型的變量有2種取值:YES、NO

#define YES (BOOL)1

#define NO  (BOOL)0

Ø BOOL的輸出(當做整數來用)

NSLog(@"%d %d", YES, NO);

繼續閱讀