什么叫做程序连接

什么叫做程序连接,第1张

写的代码需要使用其他人开发的DLL提供的函数,那么我们的程序需要将这个DLL先载入内存,之后才能使用它(DLL),根据DLL被加入到内存的时机,分为动态连接和静态连接。

动态连接:

只在使用到DLL的时候才将它载入内存,如果程序在运行过程中,从来没有执行到使用DLL的分支,那么这个DLL是不会被载入内存的。

静态连接:

在程序启动后立即加载这个DLL,而不是等需要时再进行加载。

在EXE编译时,如果做成动态连接,那么DLL是不会被编译到EXE文件中,所以EXE文件会比较小,但是使用EXE时,必须还同时拥有对应的DLL文件;如果做成静态连接,那么这个DLL是要被编译进EXE中的,这样EXE文件的体积就会变大。

编译主要工作是检查一下你的源代码,看看它是否能够读懂,如果可以完全明白,就把你的源代码变成一种计算机更方便处理的文件,通常我们称为目标文件,常用后缀.obj 或.o,编译的工作就结束了。

链接程序的拿到目标文件后,进行装配工作。因为你设计的程序中,要不是调用自己设计的功能,要不调用系统提供的功能。链接就是把根据你程序说明的调用关系,找到相应的程序,把它们拼接起来,形成可以被 *** 作系统执行的文件,也就是可执行文件。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12014097.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-20
下一篇 2023-05-20

发表评论

登录后才能评论

评论列表(0条)

保存