C语言中静态库和动态库的区别,如何使用它们

一般C语言写的程序可以让其他语言进行调用,比如python, java,等等

c语言有两种库类型,静态库和动态库(共享库)

静态库和动态库的区别

静态库

  • 静态库需要和程序进行一起编译
  • 静态库在原理上是性能比动态库要高的
  • 一般应用在对空间要求较低,而对时间要求的核心程序中

动态库

  • 动态库可以被程序直接进行调用不用一起进行编译
  • 虽然原理上性能比静态库低,但是现在优化的已经效率很高了
  • 一般在写应用程序非核心部分的时候都是用的动态库

创建一个静态库

命令:ar rcs libmulib.a file1.o

  • 上面的命令ar rcs libxxx.a file.o,中只有xxx的部分是可以进行发挥的部分

静态库的制作步骤

  • 先生成.o文件

    • gcc -c hello.c -o hello.o
  • 生成静态库,使用ar工具

    • ar rcs lib库名.a a.o b.o c.o
  • 使用静态库

    • gcc test.c libtest.a -o test
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容