C语言中“文件包含”和程序文件的链接(link)的概念,二者有何区别
发布网友
发布时间:2022-04-30 19:02
我来回答
共1个回答
热心网友
时间:2023-10-09 15:47
预编译相当于粘贴,在时间上是发生在编译之前,如果f1.c写上#include<stdio.h>则stdio.h整个文件的内容都被包含进来,被送去一起编译,产生.obj文件。
而文件的工程链接发生在编译之后,时间上与预编译不同。当两个文件形成工程项目后,一个文件的函数如果没有被static声明,它就可以被另一函数所调用。与预编译不同的是,链接之后一个文件调用的是另一文件的函数,而预编译则是调用本文件的函数,(因为全部粘贴过来了嘛)。