原创 OC運行時編程指南

目錄[+] OC運行時編程指南 介紹 OC這個語言儘可能的將一些決定從編譯和鏈接時推遲到運行時。它會儘可能的動態的處理事情。這意味這個語言  不僅需要一個編譯器,還需要一個運行時系統去執行編譯過的代碼。這個運行時系統扮演着

原创 c字符串與NSString之間的轉換

char *s = "c String";  NSString *s1 = @"NSString";  注: NSLog(@"NSString字符串 %@",s1); 與c區別的是:此處的s1是字符串對象。所以要用%@格式輸出。  轉換方

原创 C語言條件編譯及編譯預處理階段

一、C語言由源代碼生成的各階段如下: C源程序->編譯預處理->編譯->優化程序->彙編程序->鏈接程序->可執行文件        其中 編譯預處理階段,讀取c源程序,對其中的僞指令(以#開頭的指令)和特殊符號進行處理。或者說是

原创 調用nil對象的方法(Calling Methods on Nil)

在Objective-C裏,nil對象被設計來跟NULL空指針關聯的。他們的區別就是nil是一個對象,而NULL只是一個值。而且我們對於nil調用方法,不會產生crash或者拋出異常。   這個技術被framework通過多種不同的方

原创 oc中數組的四種遍歷方式及比較

      因爲iOS是兼容C語言的,所以C語言裏面的最最常見的for循環遍歷是沒有問題的。       本文中用的數組是獲取的系統的語言數組,大約有30多個數據,雖然還不夠模擬大批量的數據,但對於方法的驗證是沒有問題的了。

原创 block和函數指針有什麼區別

        block就是一個代碼塊,但是它的神奇之處在於在內聯(inline)執行的時候(這和C++很像)還可以傳遞參數。同時block本身也可以被作爲參數在方法和函數間傳遞,這就給予了block無限的可能。        bloc

原创 如何讓自己代碼在CSDN博客中進行<代碼塊>顯示?

操作非常簡單 :     直接上圖                 點上圖中箭頭所指的圖標     然後選擇編程語言       選擇好語言後 在下面的框裏 黏貼代碼 點確定即可  

原创 關於OC中消息轉發機制的理解以及在項目中的實際應用

一、什麼是消息轉發? @selector 是什麼? 1一種類型 SEL 2代表你要發送的消息(方法), 跟 字符串 有點像, 也可以互轉.: NSSelectorFromString()  /  NSSelectorFrom