#ifdef
预处理程序指令检查宏是否由#define
定义。 如果是,则执行代码,否则#else
代码执行(如果存在)。
语法:
#ifdef MACRO
//code
#endif
C
#else语法:
#ifdef MACRO
//successful code
#else
//else code
#endif
C
#ifdef示例
下面来看看一个简单的例子来了解如何使用#ifdef
预处理器指令。创建一个源文件:ifdef-example.c,其代码如下所示 -
#include
#define NOINPUT
void main() {
int a = 0;
#ifdef NOINPUT
a = 2;
#else
printf("Enter a:");
scanf("%d", &a);
#endif
printf("Value of a: %d\n", a);
}
C
执行上面测试代码,得到以下结果 -
Value of a: 2
Shell
但是,如果您没有定义NOINPUT
,则会要求用户输入一个数字。创建一个源文件:ifdef-example2.c,其代码如下所示 -
#include
void main() {
int a = 0;
#ifdef NOINPUT
a = 2;
#else
printf("Enter a:");
scanf("%d", &a);
#endif
printf("Value of a: %d\n", a);
}
C
执行上面测试代码,得到以下结果 -
Enter a:10
Value of a: 10