本 文章解释了如何在 C 语言中使用 #ifndef 预处理器指令。更多C教程请访问码农之家
描述
在 C 编程语言中,#ifndef 指令允许条件编译。在编译过程中包含后续代码之前,预处理器会判断提供的宏是否不存在。
语法
C 语言中#ifndef 指令的语法是:
#ifndef macro_definition
macro_definition 不得为预处理器定义宏定义,以将 C 源代码包含到已编译的应用程序中。
注意
- #ifndef 指令必须由#endif 指令关闭。
例子
以下示例显示如何在 C 语言中使用 #ifndef 指令:
/* Example using #ifndef directive by TechOnTheNet.com */
#include <stdio.h>
#define YEARS_OLD 12
#ifndef YEARS_OLD
#define YEARS_OLD 10
#endif
int main()
{
printf("TechOnTheNet is over %d years old.\n", YEARS_OLD);
return 0;
}
在此示例中,如果在遇到 #ifndef 指令之前未定义宏 YEARS_OLD,则将其定义为值 10。
这是可执行程序的输出:
TechOnTheNet is over 12 years old.
如果删除 #define YEARS_OLD 12 行,您将看到可执行程序的以下输出:
TechOnTheNet is over 10 years old.