IOS App入門開發進階 第一課 OC語言基礎學習

一、Objective-C語言簡介: 


   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語言中的字符串

3.其他語法




三、OC程序的開發過程


與C語言類似:




四、第1個OC程序


1.     代碼編寫

跟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


五、第2個OC程序


1.     代碼編寫

來點跟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);

六、第3個OC程序


1.     多個.m文件的開發

跟C語言中多個.c文件的開發是一樣的

#import "one.h"
int main()
{
    test();
    return 0;
}
	one.h
void test();
	one.m
#import <Foundation/Foundation.h>
void test()
{
    NSLog(@"調用了test函數");
}

2) 終端指令
 編譯:cc –cmain.m test.m
  鏈接:cc main.otest.o –framework Foundation
  運行:./a.out


1.     多個.m文件的開發

#import "one.h"
int main()
{
    test();
    return 0;
}
	one.h
void test();
	one.c
#include <stdio.h>
void test()
{
    printf("調用了test函數\n");
}

2)	終端指令
	編譯:cc –c main.m test.m
	鏈接:cc main.o test.o
	運行:./a.out
(沒有使用Foundation框架的話,就不用-framework Foundation)

好了  學習的時間總是過的很快,珍惜現在,展望未來,我們下次再見:)

By:Net Fly

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章