C語言是面向過程的編程語言,而OC則是面向對象的編程語言。
面向對象:打個比方,就是你做一次菜,讓老婆做個菜,吃飯,這就是面向對象,效率高
面向過程,就是每一個細節:比如你要先把或開到合適的位置.然后還要洗菜 ,等油熱了,才能開始炒菜,然后調料,...,起鍋,到碗里,吃飯....
面向對象編程的代碼更容易維護。它把具體的操作細節封裝在類里,用的時候創建個對象,一頓調用方法,搞定!(當然類的實現方法還是需要自己寫,面向對象只是一種編程思想。)
OC繼承、或者說是拓展於C語言,OC里可以直接寫C語言的代碼,這是OC的向下兼容。

OC於C語言的頭文件引入方式的不同:
OC #import,C語言 #include
在Xcode老版本創建OC項目時候選擇的是 “Foundation” 項目
新版本之后創建OC項目時候選擇的是 “Objective-C”
OC項目的頭文件: #import
Foundation里面包含了很多OC的庫文件引用
為什么要使用improt?
include和import都是引入頭文件
import引入頭文件可以防止重復
include他是用預處理指令防止重復包含,如果沒有寫預處理指令,
則無法防止重復包含問題。
OC的源文件擴展名是:.m
C語言的源文件擴展名是:.c
頭文件都是.h文件
OC的數據類型:


C語言與OC關鍵字對比:OC的關鍵字很多都帶着“@”符號!

OC比C語言拓展了一個for循環用法:
OC中沒有新增加流程控制,OC提供一種增強型for循環:
1 #import<Foundation/Foundation.h> 2 int main (int argc,const argv * char[]){ 3 @autoreleasepool{ 4 5 NSArray *arr = @[@"one",@"two",@"three"]; 6 //增強型for循環 7 for(NSString *str in arr){ 8 9 NSLog(@"%@"",str); 10 11 } 12 } 13 return 0; 14 }
運行結果:one
two
three
OC中的前綴"NS"是Next和sun的首字母組合
C的打印輸出函數:printf("")
OC的印輸出函數:NSLog(@"")
NSLog(@"")函數可以自動換行,printf("")函數余姚輸入斜杠+n來換行