#IFDEF | #IFNDEF ... #ENDIF 预处理器命令

 

#IFDEF | #IFNDEF ... #ENDIF 预处理器命令

示例 请参阅

编译期间,根据是否定义了某一个编译常量,决定一段代码是否要编译。

语法

#IFDEF | #IFNDEF ConstantName
Commands
[#ELSE
Commands]
#ENDIF

参数
#IFDEF

指定如果已定义了 ConstantName 指定的编译常量,则编译一段程序代码。
下面描述如何根据 #IFDEF 预处理器命令确定要编译的程序代码:

  • 如果定义了 ConstantName,则要编译从 #IFDEF 到 #ELSE 或者 #ENDIF (取决于哪个在前面)之间的程序代码。
  • 如果没有定义 ConstantName,但有 #ELSE 命令,则编译 #ELSE 到 #ENDIF 之间的程序代码。
  • 如果没有定义 ConstantName,也没有 #ELSE 命令,则 #IFDEF ... #ENDIF 结构中的所有程序都不编译。

#IFNDEF

当没有定义 ConstantName 指定的编译常量时,指定要编译的一组程序代码。
下面描述如何根据 #IFNDEF 预处理器命令决定要编译的程序代码:

  • 如果没有定义 ConstantName,则编译 #IFNDEF 到 #ELSE 或者 #ENDIF(取决于哪个在前面)之间的程序代码。
  • 如果已经定义了 ConstantName,并且有 #ELSE 命令,则编译 #ELSE 到 #ENDIF 
    之间的程序代码。
  • 如果定义了 ConstantName,但没有 #ELSE 命令,则 #IFNDEF ... #ENDIF 结构中的所有程序都不编译。

ConstantName

指定编译时间所用的常量。它的存在决定了是否编译某一组程序代码。编译常量由 #DEFINE 命令定义。

Commands

指定要编译的程序代码。

说明

一个 #IFDEF | #IFNDEF ... #ENDIF 结构可以嵌套另一个#IFDEF | #IFNDEF ... #ENDIF 
结构。
注释可以放在 #IFDEF、#IFNDEF、#ELSE 
和 #ENDIF 所在行的后面。这些注释在编译和程序运行期间将被忽略。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值