預處理指令使用#內(nèi)標記。
創(chuàng)新互聯(lián)公司是一家專業(yè)提供洛龍企業(yè)網(wǎng)站建設,專注與做網(wǎng)站、網(wǎng)站制作、H5開發(fā)、小程序制作等業(yè)務。10年已為洛龍眾多企業(yè)、政府機構(gòu)等服務。創(chuàng)新互聯(lián)專業(yè)網(wǎng)站設計公司優(yōu)惠進行中。一 : #define語句
用來定義宏。例如定義:
#define TRUE 1
解釋 : 定義了一個宏名稱為TRUE,并使它的值為1.那么之后TRUE就可以用于程序中所有需要值為1的常量的地方。
測試實例:
在DefineDemo.h中定義宏 : #define TRUE 1 。注意一般將其定義在最上面,如下圖(定義在了#import的上面)
調(diào)用的地方:可以在任何地方調(diào)用。
①:在DefineDemo.m中調(diào)用:
②:在主程序main.m中調(diào)用:
結(jié)果:
注意 : 宏是只讀的
二 : 條件編譯之 #ifdef , #endif , #else , #ifndef , #elif
#ifdef : 如果存在編譯參數(shù)
#ifndef : 如果不存在編譯參數(shù)
例如:修改了下DefineDeno.m中Print方法的實現(xiàn),如下:
我沒有定義編譯參數(shù)AINY , 則會打印Ainy not。結(jié)果如下,確實如此:
那么問題來了,如何定義一個編譯參數(shù)AINY呢 ??????
在Build Settings中:
再次運行結(jié)果,則是打印TRUE值1
顯然 : #ifdef , #ifndef 和Build Settings中的如上圖所示的配置是相關(guān)的
三 : #if 是判斷常量的
如:
四 : 編譯參數(shù)之 #undef : 消除某個編譯參數(shù)
如 : #undef AINY , 在這句執(zhí)行后 , 所有#if AINY 及 #if defined(AINY) 都為FALSE
另外有需要云服務器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。