如何将c语言封装成dll文件,封装动态库dll与静态库lib(原理及简单实例)

本文详细介绍了如何将C语言代码封装成静态库lib和动态库DLL,包括静态库和动态库的区别、生成及使用过程,并提供了具体的实例代码。通过静态库,函数代码在编译时直接加入到exe文件中,而动态库在运行时加载,可实现代码复用和程序升级。
摘要由CSDN通过智能技术生成

开发流程

https://www.runoob.com/w3cnote/cpp-static-library-and-dynamic-library.htmlhtml

lib、dll介绍

静态库:

在连接步骤中,链接器将从库文件取得所需的代码,复制到生成的可执行文件exe中,这种库称为静态库,其特色是可执行文件中包含了库代码的一份完整拷贝;缺点就是被屡次使用就会有多份冗余拷贝。即静态库中的指令都所有被直接包含在最终生成的 EXE 文件中了。在vs中新建生成静态库的工程,编译生成成功后,只产生一个.lib文件ios

lib=>exec++

静态编译\动态编译web

静态库lib编译的时候所有嵌入exe,致使exe会很大安全

动态库:

动态连接库是一个包含可由多个程序同时使用的代码和数据的库,DLL不是可执行文件。动态连接提供了一种方法,使进程能够调用不属于其可执行代码的函数。函数的可执行代码位于一个 DLL 中,该 DLL 包含一个或多个已被编译、连接并与使用它们的进程分开存储的函数。在vs中新建生成动态库的工程,编译成功后,产生一个.lib文件和一个.dll文件。网络

动态库就是动态加载svg

photoshop.exe 113MB函数

动态加载,用的时候连接一下测试

软件升级,连一下网络,替换一下dllcode

静态库和动态库中的lib有什么区别呢?

一、静态库中的lib:该LIB包含函数代码自己(即包括函数的索引,也包括实现),在编译时直接将代码加入程序当中

二、动态库中的lib:该LIB包含了函数所在的DLL文件和文件

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值