【发布时间】:2012-03-13 18:51:32
【问题描述】:
假设我有a.h,其中包括以下内容:
<stdbool.h>
<stddef.h>
<stdin.h>
假设我也有b.h,其中还包括<stdbool.h>。如果a.h 中有#ifndef 预处理器定义语句而b.h 没有。 a.h 是否只包含b.h 中未包含的内容?所以当b.h包含a.h时,a.h会包含stddef.h和stein.h而不是重新包含stdbool.h还是那些预处理器定义函数只用于查看整个类是否被重新定义,而不是特定的里面的功能?
编辑:
另外,假设b.h 包含另一个包含stdbool.h 的头文件 - 这使得b.h 具有来自该类和a.h 的stdbool.h。这会导致错误吗?
【问题讨论】:
标签: c header-files ifndef