请教Windows API 函数与C标准库函数的区别!
第一个问题,首先你要明白,C语言在某个平台上开发应用需要这个平台的API,但它本身也有自己的函数,C库的部分函数调用了windows API,比如文件读取函数,也有一些是自身的,如字符串操作。 所以它们之间关系你也就明白了。 他们之间的区别在于前者执行效率快,因为前者直接对windows系统实现控制。 第二个问题,头文件只是声明程序要用哪些函数以及什么数据类型,而这些函数体以二进制形式保存dll文件中,winAPI在系统自带的dll中,sin函数则在vc的bin文件下dll文件。 怎么实现sin函数功能的? 在vc目录下有lib文件,是提供这些函数体所在地址。 程序在编译前会告诉编译器用哪些函数,然后在生成.exe可执行文档前会与lib链接,在.exe运行时,要用哪些函数直接查找地址,这由系统完成。 第三个,我想c++库是在c库基础上的拓展。
应用程序编程接口,简称API(Application
Programming
Interface),就是软件系统不同组成部分衔接的约定。
随着软件规模的日益庞大,我们需要把复杂系统划分成小的组成部分,编程接口的设计十分重要。程序设计的实践中,编程接口的设计首先要使系统的职责得到合理划分。良好的接口设计可以降低系统各部分的相互依赖,提高组成单元的内聚性,降低组成单元间的耦合程度,从而提高系统的维护性和扩展性。
API之主要目的是提供应用程序与开发人员以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节。提供API所定义的功能的软件称作此API的实现。API是一种接口,故而是一种抽象。
A
reference
implementation
of
an
API
is
the
implementation
created
by
the
designer
of
the
API,
or
one
which
other
implementations
of
the
API
are
expected
to
be
compared
against.
例如,图形库中的一组API定义调用绘制图标函数的方式,以于屏幕上显示图标。程序中调用,编译时连接到这组API,执行时便调用API的实现(库)来显示图标。
操作系统的API可用来分配内存或访问文件。许多系统与应用程序提供API接口与实现,比如图形系统,数据库,网络,Web服务,甚至于某些游戏。
一组API经常是一套软件开发工具包(SDK)的一部分。SDK亦可包含其它工具亦或至于硬件,两个术语并不完全等同.
API有诸多不同设计。用于快速执行的接口通常包括函数,常量,变量与数据结构。也有其它方式,如通过解释器,或是提供抽象层以遮蔽同API实现相关的信息,确保使用API的代码无需更改而适应实现变化。
鹏仔微信 15129739599 鹏仔QQ344225443 鹏仔前端 pjxi.com 共享博客 sharedbk.com
图片声明:本站部分配图来自网络。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!