c预处理器#ifndef

#ifndef预处理指令检查宏是否没有被#define定义。如果是,则执行代码,否则执行#else代码(如果存在)。
句法:

#ifndef MACRO //code #endif

使用#else的语法
#ifndef MACRO //successful code #else //else code #endif

C #ifndef例子让我们看一个简单的例子
#include < stdio.h> #include < conio.h> #define INPUT void main() { int a=0; #ifndef INPUT a=2; #else printf("Enter a:"); scanf("%d", & a); #endif printf("Value of a: %d\n", a); getch(); }

输出:
Enter a:5 Value of a: 5

但是,如果你未定义INPUT,它将执行以下代码:
#include < stdio.h> #include < conio.h> void main() { int a=0; #ifndef INPUT a=2; #else printf("Enter a:"); scanf("%d", & a); #endif printf("Value of a: %d\n", a); getch(); }

【c预处理器#ifndef】输出:
Value of a: 2

    推荐阅读