zoukankan      html  css  js  c++  java
  • 链接库简介

    理解库

    库是一个文件, 它包含函数或者其它可以在应用程序中使用的资源.

    这些资源一般是通用性的, 允许许多工作不同的应用程序能轻易的共享同呈代码或者资源.

     

    静态链接库

    是应用程序可执行文件的一部分, 不能与其它使用相同函数的其它应用程序共享.

    通常用于相对小的稳定一些的函数库,比如说C标准库,因为它容易创建和维护.

    它是在编译和链接时加到可执行文件中的.

     

    动态链接库

    是可执行文件,它包含函数,数据或资源等其他应用程序可用到的东西.

    它可以在需要的时候随时装入, 在装入时或运行时.

    WINDOWS为例,当某应用程序需要一个已装入的DLL:

    1.       把该DLL映射到新进程的地址空间.

    2.       WINDOWS 2000 DLL所留的引用计数器加1.

    注意: DLL的路径是它身分的一部分.


    比如printf这个函数,我们并不能在系统中找到它的实现代码,比如一个printf.c,但是我们却可以在

    自己的程序中使用它,可是包含的<stdio.h>中只有printf的一个声明啊?printf的实现在哪里呢?其实

    就在静态链接库里,一个库文件中可以放很多个函数,编译器在链接把取得库中可执行代码的地址,

    与用户程序其他部分链接形成可执行的文件。

    上面一段是自己理解的,不对的地方请大侠拍砖!

  • 相关阅读:
    本月周六周日LIST集合
    c#动态调用WEBSERVICE接口
    c#调用
    web上传下载文件
    MVC 的知识
    MongoDB 无法创建抽象类的问题,
    并行活动
    C# 字符串计算表达式
    c# 将字符串转换为逻辑表达式(字符串转换布尔)
    C# 中间语言、CLR、CTS、CLS
  • 原文地址:https://www.cnblogs.com/liujiahi/p/2196407.html
Copyright © 2011-2022 走看看