我现在正在使用编译器,我想确保问题不是对头文件的基本误解。如果我包含一个头文件,并且该头文件中包含了该文件(如<stdbool.h>
或<stdio.h>
等...),那么依赖C文件应该没有任何问题,对吧?根据我的理解,预处理器应该在我调用makefile时相应地插入汇编的代码。我错了吗?
重申:
说我main.c
prototype.h
。
prototype.h
里面有我所有常用的图书馆和什么不包括。
我还有其他几个C文件(例如secondary.c
和tertiary.c
),这两个文件都需要通常的库,可能需要也可能不需要原型并且还有自己的头文件。
我需要做的就是在每个C文件中包含prototype.h
,对吗?
此外,在那个例子中,如果我使用.o
中-c
的{{1}}标记创建gcc
文件,我是否需要更新makefile
的目标?
当我开始时,我以为我对此有了坚实的把握,但现在我完全糊涂了。
答案 0 :(得分:0)
这是多个答案的问题。
在简单的情况下,如果在.c文件中使用标题,则只包含标题。标题是编译的依赖项,因此,您只需将它放在使用那些.c文件的同一个存储桶中。
对于加速编译的大型项目,您可以使用名为&#39; precompiled header&#39;。您必须在每个源文件中包含相同的头文件,编译器只会处理该头文件一次。当标题很复杂时(例如,升级库)
,这非常有用