我們開發(fā)的程序不只在pc端運(yùn)行,也要在移動(dòng)端運(yùn)行。這時(shí)程序就要根據(jù)機(jī)器的環(huán)境來執(zhí)行選擇性的編譯,如對(duì)PC端編譯PC端的程序,對(duì)移動(dòng)端編譯移動(dòng)端的程序,這里我們就可以用兩組條件編譯。
創(chuàng)新互聯(lián)一直通過網(wǎng)站建設(shè)和網(wǎng)站營(yíng)銷幫助企業(yè)獲得更多客戶資源。 以"深度挖掘,量身打造,注重實(shí)效"的一站式服務(wù),以網(wǎng)站設(shè)計(jì)、成都網(wǎng)站制作、移動(dòng)互聯(lián)產(chǎn)品、全網(wǎng)整合營(yíng)銷推廣服務(wù)為核心業(yè)務(wù)。十年網(wǎng)站制作的經(jīng)驗(yàn),使用新網(wǎng)站建設(shè)技術(shù),全新開發(fā)出的標(biāo)準(zhǔn)網(wǎng)站,不但價(jià)格便宜而且實(shí)用、靈活,特別適合中小公司網(wǎng)站制作。網(wǎng)站管理系統(tǒng)簡(jiǎn)單易用,維護(hù)方便,您可以完全操作網(wǎng)站資料,是中小公司快速網(wǎng)站建設(shè)的選擇。#ifdef #endif
#ifndef #endif
我們先來了解下#ifdef ...#endif;語(yǔ)法格式是:
#ifdef 宏名字 |#ifdef 宏名字
//任意代碼 |//任意代碼
#endif |#else
|//任意代碼
|#endif
上面的兩種格式是,如果指定了宏,就會(huì)執(zhí)行#ifdef ... #endif中的代碼。
// // main.m // Hong_Test // // Created by 程英暾 on 2017/3/20. // Copyright 2017年 程英暾. All rights reserved. // #import#define iPad int main(int argc, const char * argv[]) { @autoreleasepool { #ifdef iPad NSLog(@"this is ipad"); #else NSLog(@"this is iphone"); #endif // insert code here... NSLog(@"Hello, World!"); } return 0; }
執(zhí)行的結(jié)果就是:
2017-03-20 22:54:22.010569 Hong_Test[8061:318230] this is ipad
我們來分析一下,首先我們定義了宏#define iPad,接下來程序會(huì)對(duì)宏進(jìn)行查找,找到后,就會(huì)根據(jù)我們定的條件編譯需要編譯的程序。其實(shí)和if...else...if差不多。但為什么會(huì)有這種些,事物存在就有存在意義,有兩點(diǎn),1.我們?cè)谡{(diào)試程序時(shí)會(huì)寫很多語(yǔ)句,在正式布時(shí)只要去掉宏就可以了,其二這種條件編譯可以減少程序的體積。
下面我們用#if...#else...#endif來進(jìn)行一個(gè)實(shí)例操練,結(jié)束今天的學(xué)習(xí)
// // main.m // Hong_Test // // Created by 程英暾 on 2017/3/20. // Copyright 2017年 程英暾. All rights reserved. // #import#define age 30 int main(int argc, const char * argv[]) { @autoreleasepool { #if age>60 NSLog(@"老人"); #elif age>40 NSLog(@"中年人"); #elif age>20 NSLog(@"青年"); #endif } return 0; }
結(jié)果:青年
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。