C语言条件编译 #
一、#ifdef和#ifndef #
1.1 #ifdef #
c
#ifdef DEBUG
printf("调试模式\n");
#endif
1.2 #ifndef #
c
#ifndef HEADER_H
#define HEADER_H
#endif
二、#if和#elif #
2.1 基本用法 #
c
#if VERSION == 1
#define FEATURE 1
#elif VERSION == 2
#define FEATURE 2
#else
#define FEATURE 0
#endif
2.2 defined运算符 #
c
#if defined(DEBUG) && !defined(RELEASE)
printf("调试模式\n");
#endif
三、应用场景 #
3.1 头文件保护 #
c
#ifndef MYHEADER_H
#define MYHEADER_H
int add(int a, int b);
#endif
3.2 平台判断 #
c
#ifdef _WIN32
#define PLATFORM "Windows"
#elif defined(__linux__)
#define PLATFORM "Linux"
#elif defined(__APPLE__)
#define PLATFORM "macOS"
#endif
3.3 调试代码 #
c
#ifdef DEBUG
#define LOG(msg) printf("[DEBUG] %s\n", msg)
#else
#define LOG(msg)
#endif
四、总结 #
| 指令 | 说明 |
|---|---|
| #ifdef | 如果定义 |
| #ifndef | 如果未定义 |
| #if | 条件判断 |
| #elif | 否则如果 |
| #else | 否则 |
| #endif | 结束条件 |
下一步,让我们学习文件包含!
最后更新:2026-03-26