api(application programming interface,應(yīng)用程序編程接口)是一些預(yù)先定義的函數(shù),目的是提供應(yīng)用程序與開(kāi)發(fā)人員基于某軟件或硬件得以訪問(wèn)一組例程的能力,而又無(wú)需訪問(wèn)源碼,或理解內(nèi)部工作機(jī)制的細(xì)節(jié)。
操作系統(tǒng)的用戶(hù)接口
windows api
api函數(shù)包含在windows系統(tǒng)目錄下的動(dòng)態(tài)連接庫(kù)文件中。windows api是一套用來(lái)控制windows的各個(gè)部件的外觀和行為的預(yù)先定義的windows函數(shù)。用戶(hù)的每個(gè)動(dòng)作都會(huì)引發(fā)一個(gè)或幾個(gè)函數(shù)的運(yùn)行以告訴windows發(fā)生了什么。這在某種程度上很像windows的天然代碼。而其他的語(yǔ)言只是提供一種能自動(dòng)而且更容易的訪問(wèn)api的方法。當(dāng)你點(diǎn)擊窗體上的一個(gè)按鈕時(shí),windows會(huì)發(fā)送一個(gè)消息給窗體,vb獲取這個(gè)調(diào)用并經(jīng)過(guò)分析后生成一個(gè)特定事件。
更易理解來(lái)說(shuō):windows系統(tǒng)除了協(xié)調(diào)應(yīng)用程序的執(zhí)行、內(nèi)存的分配、系統(tǒng)資源的管理外,同時(shí)他也是一個(gè)很大的服務(wù)中心。調(diào)用這個(gè)服務(wù)中心的各種服務(wù)(每一種服務(wù)就是一個(gè)函數(shù))可以幫助應(yīng)用程序達(dá)到開(kāi)啟視窗、描繪圖形和使用周邊設(shè)備等目的,由于這些函數(shù)服務(wù)的對(duì)象是應(yīng)用程序,所以稱(chēng)之為application programming interface,簡(jiǎn)稱(chēng)api 函數(shù)。win32 api也就是microsoftwindows 32位平臺(tái)的應(yīng)用程序編程接口。
凡是在 windows工作環(huán)境底下執(zhí)行的應(yīng)用程序,都可以調(diào)用windows api。
linux api
在linux中,用戶(hù)編程接口api遵循了unix中最流行的應(yīng)用編程界面標(biāo)準(zhǔn)---posix標(biāo)準(zhǔn)。posix標(biāo)準(zhǔn)是由ieee和iso/iec共同開(kāi)發(fā)的標(biāo)準(zhǔn)系統(tǒng)。該標(biāo)準(zhǔn)基于當(dāng)時(shí)現(xiàn)有的unix實(shí)踐和經(jīng)驗(yàn),描述了操作系統(tǒng)的系統(tǒng)調(diào)用編程接口api,用于保證應(yīng)用程序可以在源程序一級(jí)上在多種操作系統(tǒng)上移植運(yùn)行。這些系統(tǒng)調(diào)用編程接口主要是通過(guò)c庫(kù)(libc)來(lái)實(shí)現(xiàn)的。