静态库

✍ dations ◷ 2025-12-07 21:30:58 #计算机程序库

在计算机科学中,静态库(英语:Static library, Statically-linked library),或称静态库,是一个外部函数与变量的集合体。静态库的文件内容,通常包含一堆程序员自定的变量与函数,其内容不像动态链接库那么复杂,在编译期间由编译器与链接器将它集成至应用程序内,并制作成目标文件以及可以独立运作的可执行文件。而这个可执行文件与编译可执行文件的程序,都是一种程序的静态创建(static build)。以过去的观点来说,库只能算是静态(static)类型。

只需保证在开发者的计算机有正确的库文件,在以二进制发布时不需考虑在用户的计算机上库文件是否存在及版本问题,可避免DLL地狱等问题。

生成的可执行文件体积较大。当初正是为了避免此问题,才开发了动态库技术。

静态库可以用简单的C语言或是C++代码去创建它。这两个编程语言提供关键字指定函数与变量是否为外部(external)或是内部(internal)链接,此外,还提供其他的特性。

创建这类的库时,将函数或是变量导出(export)一定要用外部链接( )的语法特别指定它们。

静态库文件名为lib*.a,在使用了其中的函数之后,使用-l*参数要求连接器连入。

例如,在许多系统上,当使用了math.h中的函数后,需要使用-lm参数连接libm.a文件。

静态库文件名为*.lib,在使用了其中的函数之后,使用#pragma comment(lib,"*")预编译指令要求连接器连入。

相关

  • 紫菀紫菀(学名:Aster tataricus),又名青菀、紫倩、青牛舌头花(河北土名)、山白菜、驴夹板菜、驴耳朵菜、还魂草、返魂草、小辫,是菊科紫菀属植物。多年生草本,株高可达1.8米;须根多数簇生
  • 小汉斯·霍尔拜因小汉斯·霍尔拜因 (德语:Hans Holbein der Jüngere,约1497年-1543年11月29日以前)是德国画家,最擅长油画和版画,属于欧洲北方文艺复兴时代的艺术家,他最著名的作品是许多肖像画和系
  • 2-氮杂环丁酮2-氮杂环丁酮(英语:2-Azetidinone)是最简单的β-内酰胺,分子式为C3H5NO。它组成了所有β-内酰胺类抗生素的核心结构。
  • 国际世界运动总会国际世界运动总会(International World Games Association,IWGA),简称世运总会,是一个非政府、非营利和永久性的国际体育组织,成立于1981年,为世界运动会的主管机构。它的主要任务
  • 氟锑酸氟锑酸(化学式:HSbF6)或称六氟锑酸,是氢氟酸和五氟化锑反应后的产物。以一比一的比例混合时成为现在已知最强的超强酸,实验证明能分解碳氢化合物,产生碳正离子以及氢气。氢氟酸(HF)
  • 竹田乡坐标:22°35′05″N 120°32′39″E / 22.584707°N 120.544050°E / 22.584707; 120.544050竹田乡(台湾客家语南四县腔:zugˋ tienˇ hiongˊ)位于台湾屏东县中部,为六堆之中堆
  • 大话西游外传《大话西游外传》是网易公司开发并运营的一款MMORPG(大型多人在线角色扮演游戏)。大话西游外传是一款写实风格的2D游戏,采用网络游戏免费模式,并宣称永久免费。2008年7月5日第一
  • 第十八修正案宪法正文I ∙ II ∙ III ∙ IV ∙ V ∙ VI ∙ VII其它修正案 XI ∙ XII ∙ XIII ∙ XIV ∙ XV XVI ∙ XVII ∙ XVIII ∙ XIX ∙ XX XXI ∙ XXII ∙ XXIII ∙
  • 远遁基银汉鱼远遁基银汉鱼,为辐鳍鱼纲银汉鱼目拟银汉鱼科的其中一种,分布于南美洲秘鲁安地斯山脉淡水流域,为温带淡水鱼,栖息在海底2000米的溪流,生活习性不明。 维基物种中有关远遁基银汉鱼
  • 媒体源扩展媒体源扩展(Media Source Extensions,缩写MSE)是一项W3C规范,它允许JavaScript将比特流发送至网页浏览器中支持HTML5视频的编解码器。除上述用途外,它还使客户端可以完全在JavaSc