重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
预处理指令使用#内标记。
创新互联公司是一家专业提供洛龙企业网站建设,专注与做网站、网站制作、H5开发、小程序制作等业务。10年已为洛龙众多企业、政府机构等服务。创新互联专业网站设计公司优惠进行中。一 : #define语句
用来定义宏。例如定义:
#define TRUE 1
解释 : 定义了一个宏名称为TRUE,并使它的值为1.那么之后TRUE就可以用于程序中所有需要值为1的常量的地方。
测试实例:
在DefineDemo.h中定义宏 : #define TRUE 1 。注意一般将其定义在最上面,如下图(定义在了#import的上面)
调用的地方:可以在任何地方调用。
①:在DefineDemo.m中调用:
②:在主程序main.m中调用:
结果:
注意 : 宏是只读的
二 : 条件编译之 #ifdef , #endif , #else , #ifndef , #elif
#ifdef : 如果存在编译参数
#ifndef : 如果不存在编译参数
例如:修改了下DefineDeno.m中Print方法的实现,如下:
我没有定义编译参数AINY , 则会打印Ainy not。结果如下,确实如此:
那么问题来了,如何定义一个编译参数AINY呢 ??????
在Build Settings中:
再次运行结果,则是打印TRUE值1
显然 : #ifdef , #ifndef 和Build Settings中的如上图所示的配置是相关的
三 : #if 是判断常量的
如:
四 : 编译参数之 #undef : 消除某个编译参数
如 : #undef AINY , 在这句执行后 , 所有#if AINY 及 #if defined(AINY) 都为FALSE
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。