zl程序教程

您现在的位置是:首页 >  后端

当前栏目

【C++】之多文件编译原理

C++文件原理 编译 之多
2023-09-14 09:07:07 时间

在单文件的情况下(只有一个.h和.c/.cpp)我们只需编译该文件即可,例如:

$ gcc main.c -o main

但更多的情况下,一个工程需要分开为多个源文件,比如 main.c、a.c、b.c 等,那这种情况下是如何编译的呢?首先要在 main.c 中调用 a.c 中的方法,必须包含 a.h 头文件,有了头文件中的函数声明就确保了 main.c 的函数调用的正确性。好了,现在我们执行编译多文件命令:

$ gcc main.c a.c b.c -o main

整个编译结果是这样的:编译器先把源文件见 main.c a.c b.c 独立编译为 main.obj a.obj b.obj 目标文件,然后再把其中要用到的函数方法链接到 main.obj 来,最终打包成可执行文件 main,这就是分离编译和链接原理。