C的头文件保护问题

C的头文件保护问题,第1张

这个都可以,风格而已。

只要取个唯一的标识符即可。

不过要注意

#ifndef

***

//上下两个标识符要相同

#define

***

#endif

这东西不叫什么头文件保护,是为了防止重复include

尽量不要使用静态全局变量, 除非特别需要(全局变量用于需要在main函数启动前就可用). 要注意在头文件中使用头文件保护符#ifndef , 防止重复声明. 全局变量的声明都要在所有函数之外.

for example:

A.h: 定义声明 int X

A.c: 初始化 static int X=???

在B. c或B.h中使用: #include "A.h"

引用声明 extern int X

当1个C语言程序由 多个 源程序文件 组成时,由于每个 源程序文件 都有 #include <...>

#include "...h", 最终它们可能形成交叉 包含 和 重复包含 现象 而造成错误。

为了避免这种情况发生,可以 采用 定义宏 的方法 把各个头文件 包起来。

编译器 在正式编译的开始,现处理 宏 -- 也就是“预编译命令".

用 宏(#号开始的行) 把 头文件内容 包起来:

#ifndef _HEADER_One_H_ // 意思是:宏开始行,如果还没有定义 _HEADER_One_H_ 则 进入,否则退出

#define _HEADER_One_H_//定义 _HEADER_One_H_//

header1.h

头文件内容

#endif // 宏结束行


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/11494359.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-16
下一篇 2023-05-16

发表评论

登录后才能评论

评论列表(0条)

保存