dll、exe、lib的区别

dll

动态链接库(Dynamic Link Library,缩写DLL)

一般其文件扩展名为.dll,其中封装了一些可以被共享的例程和资源,是在windows系统中实现共享函数库概念的一种实现方式

exe

OS/2、MS-DOS和Windows系统中通用的可执行文件的扩展名

lib

静态链接库,(Statically Linked Library,缩写lib)

其通常包含许多自定的变量与函数等

区别

dll动态链接库是相对于静态链接库而言的,dll和lib中均含有可执行代码但不能单独运行,需链接至可执行文件才可运行。

静态链接就是在编译期间由编译器与链接器将静态链接库集成至应用程序内,并制作成可以独立运行的可执行文件,也就是说生成的文件中包含了lib中的所有代码,当多个程序需使用该库中的函数时,会在内存中出现多个相同函数的拷贝。

动态链接则是在程序运行期间进行,当程序需调用dll中的某些函数时,windows会把dll加载进内存,但程序仅获取dll中相应函数在内存中的地址等信息,根据该地址信息转而执行动态链接库中的函数代码,节约内存空间。

参考链接:

wiki动态链接库

wiki静态链接库

https://blog.csdn.net/kinglee0531/article/details/5954639

posted @   涅莫涅  阅读(891)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
· 25岁的心里话
点击右上角即可分享
微信分享提示