据我所知:
提供了包含头文件,宏扩展,条件编译和行控制的功能。
我关注的是包含头文件,它通过将#include blabla.h
替换为实际代码blabla.h
来实现。在编译 之前调用 。
获取编译器生成的一个或多个目标文件,并将它们组合成单个可执行文件,库文件或其他目标文件。
在StackOverflow上阅读了很多answers,我理解它"链接"我可能在我的代码中使用我的实际代码的其他函数库,例如stdio.h
和printf();
。并且在编译后调用。
现在我的问题是,如果预处理器已经 - 在我的代码中包含了该库的代码,为什么我们需要链接?假设他们已成为一个档案。