头文件重复引用

Posted 野渡书生

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了头文件重复引用相关的知识,希望对你有一定的参考价值。

Q:.h头文件中的ifndef/define/endif 的作用? 

 A:防止该头文件被重复引用。

 说明:

有些头文件重复包含只是增加了编译工作的工作量,不会引起太大的问题,仅仅是编译效率低一些。

有的会引起错误,比如在头文件中定义了全局变量(虽然这种方式不被推荐,但确实是C规范允许的) 。

如果头文件被循环包含,有的编译器会智能处理,和只include一次一样;有的会报错,有的直接死锁,导致编译程序崩溃(这个只有很低级的编译器才会出现在几乎看不到了)。

不管怎样,用ifnde xxx #define xxx或者其他方式避免头文件重复包含,只有好处没有坏处,是一个很好的习惯

以上是关于头文件重复引用的主要内容,如果未能解决你的问题,请参考以下文章

#ifndef/#define/#endif使用(转载)

#ifndef.#define, #endif 的用法

这个问题,C语言,一个关于头文件重复定义的问题!!!??

VC里 如何引用另一个工程的头文件?

c语言 头文件中放函数实体 两个c文件同时引用会报错:找到一个或多个重定义的符号

浅谈c/c++头文件中#ifndef/#define/#endif的用法