首页 > 解决方案 > 如何在 C 编程中将两个头文件和 3 个 c 文件链接到一个可执行文件中?

问题描述

我被要求创建两个头文件,h1.h 和 h2.h;两个c文件,a1.c和a2.c;和一个主文件 mainfile.c。a1 文件包含 h1 头文件,a2 包含 h2 头文件,mainfile 包含这两个头文件。现在我想将它们链接在一起以获得一个可执行的 .exe 文件。

我知道如果只有 1 个头文件 (xh) 与两个 c 文件(a1.c 和 a2.c)一起存在,我们可以使用:

gcc -c a1.c
gcc -c a2.c
gcc -o x_exe a1.o a2.o
./x_exe

任何人都可以为我的问题提出相同格式的建议吗?

标签: cmodulecompilationlinkerheader-files

解决方案


一般来说,您将每个 .c 文件编译为 .o 文件,然后将 .o 文件链接到可执行文件中。

因此,对于您的具体示例,您将按如下方式编译源文件:

gcc -c a1.c
gcc -c a2.c
gcc -c mainfile.c

并链接如下:

gcc -o x_exe a1.o a2.o mainfile.o

编译时无需担心头文件,除非它们与源文件位于不同的目录中,否则您将使用该-I选项指定该位置。


推荐阅读