7.6.4 库文件的好处

程序员在编写源程序时,通常采用模块化的思想来组织源程序:把各类不同的子程序分别编写在不同的源程序中,在各源程序中说明所用到的在其它模块中定义,或说明本模块的定义子程序可被其它模块调用。这样组织后,就可以分别汇编它们而得到其相应的目标文件,在有了这些目标文件后,就可生成最终的可执行文件,但可用不同的方法来生成最终的可执行目标文件。

方法1:直接连接目标文件而生成可执行文件(如上节例7.6中的方法1所示)

这种方法简单、方便,也是常用的一种方法,但在连接时,LINK程序会把目标文件中的所有代码都嵌入到执行文件中,从而使得:包含在某目标文件中、但并没有被调用的子程序代码也出现在执行文件中。这种情况无疑增加了执行文件的字节数。

方法2:采用子程序库的方法(如上节例7.6中的方法2所示)

库文件可以把它看成是子程序的集合。库文件中存储着子程序名、子程序的目标代码以及连接所需要的重定位信息。当某目标文件与库文件相连接时,LINK程序只把目标文件所用到的子程序从库文件中找出来,并合并到最终的可执行文件中,而不是把库中所含的全部子程序都纳入最后的可执行文件。

对照方法1和2可知:用库文件来存储子程序可生成较短的执行文件。