#ifdef...#else...#endif
用于进行条件编译。
格式
#ifdef识别符...为进行条件编译的源代码
[#else]...伪条件的源代码
#endif
参数
- 识别符
- 是编译#ifdef和#else或#endif之间的源代码、进行用户定义的关键字。这样,此识别符将作为编译条件而起作用。
说明
#ifdef...#else...#endif用于条件编译已选择的源代码。是否进行了编译的条件将根据识别符来确定。首先,#ifdef将检查指定的识别符是否被当前#define定义。#else语句可以省略。
[已定义时] 如果#else语句正在使用,将编译#ifdef和#else之间的语句。#如果未使用#else语句,将编译#ifdef和#endif之间的语句。
[未定义时] 如果#else语句正在使用,将编译#else和#endif之间的语句。#如果未使用#else语句,将跳过该语句而不编译#ifdef和#endif之间的语句。
参阅
#define, #ifndef
#ifdef使用示例
下例为使用#ifdef的程序例。在下例中,可以根据有无#define DEBUG模拟命令的定义来控制是否输出变量A$的值。如果#define DEBUG模拟命令是在源码中使用,以此为例是在记载的部分之前使用,Print A$的行将被编译并且在执行程序时输出。但是,此时将输出字符串“The End”而与#define DEBUG模拟命令无关。
'如果是调试模式,将取消对以下的行的注释
' #define DEBUG
Input #1, A$
#ifdef DEBUG
Print "A$ = ", A$
#endif
Print "The End"