其他分享
首页 > 其他分享> > c – 头部防护装置的用途

c – 头部防护装置的用途

作者:互联网

在C中,C程序中的头部保护的目的是什么.

从net我发现这是为了防止包含文件一次又一次,但是如何保护头文件保证这一点.

解决方法:

保护头(或更常规的“包括保护”)是为了防止头文件包含多次的问题;例如

#ifndef MARKER
#define MARKER
// declarations 
#endif

该文件第一次是#include-ed时,MARKER预处理器符号将是未定义的,因此预处理器将定义该符号,并且以下声明将包含在编译器看到的源代码中.在随后的#include中,将定义MARKER符号,因此预处理器将删除#ifnde / #endif中的所有内容.

为了使其正常工作,每个头文件(可能是#include-ed)的MARKER符号需要不同.

这种事情是必要的原因是在C/C++中在编译单元中多次定义具有相同名称的类型或函数是非法的.防护允许头文件#include其他头文件,而不必担心这可能导致一些声明被多次包含.

简而言之,它不会阻止您一次又一次地#include一个文件.相反,它允许您执行此操作而不会导致编译错误.

标签:include-guards,c
来源: https://codeday.me/bug/20190917/1809398.html