#ifdef
預處理程式指令檢查巨集是否由#define
定義。 如果是,則執行程式碼,否則#else
程式碼執行(如果存在)。
語法:
#ifdef MACRO
//code
#endif
#else語法:
#ifdef MACRO
//successful code
#else
//else code
#endif
#ifdef範例
下面來看看一個簡單的例子來了解如何使用#ifdef
前處理器指令。建立一個原始檔:ifdef-example.c,其程式碼如下所示 -
#include <stdio.h>
#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);
}
執行上面測試程式碼,得到以下結果 -
Value of a: 2
但是,如果您沒有定義NOINPUT
,則會要求使用者輸入一個數位。建立一個原始檔:ifdef-example2.c,其程式碼如下所示 -
#include <stdio.h>
void main() {
int a = 0;
#ifdef NOINPUT
a = 2;
#else
printf("Enter a:");
scanf("%d", &a);
#endif
printf("Value of a: %d\n", a);
}
執行上面測試程式碼,得到以下結果 -
Enter a:10
Value of a: 10