ifndef define endif作用
时间: 2023-08-09 15:06:43 浏览: 390
ifndef 的用法
`#ifndef`,`#define` 和 `#endif` 是 C/C++ 中预处理器的指令。
- `#ifndef` 是 "if not defined" 的缩写,它会检查一个符号是否已经被定义过。如果没有被定义过,那么编译器就会继续编译之后的代码。
- `#define` 是用来定义符号的。符号可以是一个宏,也可以是一个常量。当你在程序中使用该符号时,预处理器会将其替换为相应的代码。
- `#endif` 则是配对使用的 `#ifndef` 指令的结束标志,配对使用ifndef可以防止重复包含头文件,提高编译效率
例如:
```
#ifndef _MY_HEADER_H_
#define _MY_HEADER_H_
/*
这里是你的头文件中的代码
*/
#endif
```
这段代码会检查 "_MY_HEADER_H_" 这个符号是否已经被定义过,如果没有,就会定义该符号并编译之后的代码。
在同一个项目中,如果有另一个文件也想包含此头文件,那么它会跳过第二个 #define 因为 MY_HEADER_H_ 已经被 define过了,这样就可以防止重复定义.
阅读全文