`#ifndef`, `#define`, `#endif` 和 是C/C++语言中的预处理器指令
1. `#ifndef`:用于检查某个宏是否已经定义过,如果没有定义过,则执行后面的代码块。通常与 `#define` 和 `#endif` 一起使用,以确保头文件只被包含一次。
#ifndef HEADER_FILE
#define HEADER_FILE
// 头文件中的代码
#endif // HEADER_FILE
2. `#define`:用于定义一个宏,可以将其替换为任意文本。宏在预处理阶段就会被替换。
#define PI 3.14159
3. `#endif`:用于结束一个条件编译的代码块。当遇到 `#endif` 时,编译器会停止处理该代码块中的内容。