我已经制作了标题和来源,但我不知道如何将它们联系起来。我在网上查了一下,但提供的命令没有用(或者我不会在这里:))。
编译它(如果你使用GCC):
部首:
$ gcc -c whatever.h -o whatever.o
来源:
$ gcc -c sample.c -o sample.o
链接文件以创建可执行文件:
$ gcc sample.o whatever.o -o sample
我做错了什么。我正在使用geany进行写入(编译错误在这里),但命令在同一目录中的终端上执行。任何人都可以给我geany的构建命令,所以每当我想要包含一个头,我可以编译并运行吗?
答案 0 :(得分:5)
好的,正确的方法是
<强> sample.c文件强>
#include "header.h"
并编译
gcc sample.c -o ob
答案 1 :(得分:2)
拇指规则:
.h
]适用于#include
ing .c
]用于编译和链接在一起以创建可执行文件。一旦#include
文件中的头文件被.c
后,就无需编译头文件并生成目标文件。
仅供参考,您可以通过运行
来检查#include
- 头文件的效果
gcc -E sample.c
并希望您了解为何无需分别编译和链接头文件。
编辑:
如果您有sample.c
和whatever.h
,要生成并运行二进制文件,只需执行
#include "whatever.h"
位于sample.c
gcc -o sample sample.c
./sample
答案 2 :(得分:1)
如果您通过以下方式包含头文件:
#include <header.h>
它将给出此错误。
相反,您可以编写如下代码:
#include "header.h"