我想知道API和DLL之间的确切区别。谢谢。
这两个术语之间的唯一联系几乎是,如果您执行本机Windows编程,则您使用或编写的API通常会表现为DLL文件。但这不是API可以采用的唯一具体形式,也不是每个DLL都代表API。
API的意思是“应用程序编程接口”,它是一组代码实体(函数,类等,取决于编程语言)的抽象术语,旨在供广大程序员用来访问应用程序的功能。或图书馆。
DLL是Windows上的一种文件格式,其中包含可执行代码,可以将应用程序模块化。
DLL是代码库,API是代码库的接口。
应用程序编程接口(API)是由软件程序实现的接口,使其可以与其他软件进行交互。它促进了不同软件程序之间的交互,类似于用户界面促进了人机之间交互的方式。 -维基百科
动态链接库(DLL)是提供API的一种方法。 (与程序员的接口)您可能有多种其他方法,例如Web服务。
更新:DLL(动态链接库)是一个代码组件(有些类似于Java中的Bean)。 DLL包含方法或函数或例程,或您所说的那些代码片段。API是应用程序与该DLL之间的接口。在大多数情况下,DLL用于为其他应用程序提供服务,这些DLL称为服务器DLL,如果DLL通过使用API调用或其动态调用来请求某些服务,则称其为客户端DLL。这么简单地认为,API就是从DLL外部可以访问的方法或函数。希望你现在有了主意。
DLL =动态链接库
API =应用程序编程接口
DLL只是Windows系统上的一个文件,其中包含一些可由其他可执行文件使用的代码。 API是一种将一种软件或软件库与另一种软件一起使用的方法。例如,有一个Windows注册表API,允许您使用注册表,但是使用该API时运行的代码存储在DLL中。
API是用于通信应用程序不同组件的接口,其中dll是一个包含代码的库文件,以便您的程序可以使用您的API来使用
API是头文件(.h),其中包含函数和类声明(输入和输出参数),这些声明的实现,即类或函数的定义将特别是dll。
但是要连接(动态链接)这两个.h和.dll文件,您需要.lib文件,这些文件将在运行时解析功能定义的地址,并且已加载特定的dll文件。因此,库包含(APIs(.h),lib和dll文件)。
API使应用程序开发独立于基础库实现。
示例:
如果您使用C编写程序以打印“ Hello World”。如果您运行Windows和Linux中使用相同的程序。
这两个可执行文件都将使用不同的系统库在屏幕上显示它,因为C语言提供了一组API,例如“ STDIO.h”,“ STDLIB.h”,因此您不必担心基础库的实现。
因此,您可以将API作为头文件,将函数/类声明与函数/类定义连接起来。因此,名称为“应用程序接口”。