2016-01-31 114 views
0

我做了一些头文件并将它们放在与主程序相同的文件夹中,但编译命令gcc -ansi -Wall *.c找不到这些文件。我是否必须包含头文件的完整目录路径,还是我在做其他错误?包含自定义头文件(ANSI C)

+0

Te C标签暗示标准C.自〜17年以来,ANSI C(又名C89)不再是标准。 – Olaf

回答

1

所有你必须包含头文件到相关的C-文件,如果你还没有这样做这样的第一:

#include "path/to/file.h" 

你也必须告诉编译器来编译.H如果你的.h文件与你的.c文件相同,并且你想包含所有当前的.h文件,你的编译器命令应该是这样的:

gcc -ansi -Wall *.h *.c 
+0

有什么办法可以避免放置整个目录路径? – odin19

+0

使用完整路径可能是最简单的方法。否则,您可以将标头放置在以下位置之一:/ usr/local/include libdir/gcc/target/version/include /usr/target/include /usr/include [更多内容](https:/ /gcc.gnu.org/onlinedocs/cpp/Search-Path.html) –