编译后需要头源文件吗?

cla*_*234 0 c

如果我制作headerfile.h然后headerfile.c使用函数的源代码。一旦我编译了主 C 文件sampleprogram.c

cc -o sampleprogram headerfile.c sampleprogram.c
Run Code Online (Sandbox Code Playgroud)

还需要那个头文件的源文件吗?是headerfile.csampleprogram.c编译链接在一起的吗?你需要包括headerfile.h沿sampleprogram,如果你把程序的USB驱动器上,并把它在不同的电脑上?

stu*_*e06 5

执行程序或使用共享/静态库不需要头文件。但是,编写使用库接口的代码需要头文件。通常,在 RedHat 发行版下,您有安装库 ( libuv) 的 rpm 和安装标头 ( libuv-devel) 的rpm 。

因此,无需头文件,您就可以执行程序,也可以链接库。但是,如果要编写使用库 API 的代码,则需要系统上的标头。

如果您编译一个程序并将其放在 USB 驱动器上,您所需要的只是可执行文件。但是,您可能需要重新编译程序,因为编译器针对的是它运行的系统的特定体系结构。如果您将可执行文件移动到另一台计算机,它可能不起作用。