C学习1.0 - Static Library and Share Library

本文介绍了C语言中的静态库(.a或.lib)和动态库(.so或.dll),静态库会将机器代码复制到可执行文件中,而动态库仅复制小表。静态库的优点包括在程序中包含所有依赖,而动态库则可以节省空间并允许不更新应用就能更新库。编译源代码需要头文件,并且在链接时需要指定库。在Unix中,使用-l选项指定库(如-lxxx),而在Windows中提供全名(如-lxxx.lib)。利用工具如`nm`和`ldd`可以查询和管理库。
摘要由CSDN通过智能技术生成

Library

a collectioned object file of pre-compile file that can be linked into your programs via by linker

预编译的object file集合,可以通过linker链接到你的程序中

Static Library
  1. 后缀".a" (archive file) in Unixes or “.lib” (library) in Windows
  2. copy machine code(用的到external function) into excutable file
  3. ar.exe可以创建static library
Shared Library
  1. 后缀 “.so” (shared objects) in Unixes or “.dll” (dynamic link library) in Windows
  2. copy only small table into excutable file
  3. 在开始前,操作系统external function需要的machine code(called dynamic link library)

好处:

  1. 节省大小
  2. 不需要更新app,就可以更新library

header

  • compiling source code need header file

  • linker need external references from object file or

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值