你的函數(shù)庫是否是指將自己寫的那些函數(shù)封裝到一個頭文件里面,在用的時候調(diào)用啊?
創(chuàng)新互聯(lián)主要從事成都網(wǎng)站制作、成都網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)紅花崗,10多年網(wǎng)站建設(shè)經(jīng)驗,價格優(yōu)惠、服務(wù)專業(yè),歡迎來電咨詢建站服務(wù):18980820575
如果這樣,就要建立一個.h文件和一個.c文件,并且,.c文件和.h文件的名字要一樣,在你的這個.c文件里面添加你的那些函數(shù),然后在.h文件里面用extern將這個函數(shù)聲明一下,這樣當你包含這個頭文件的時候,你的其他的文件就可以調(diào)用這個文件的函數(shù)了,樓上所說的開放的接口也就是你要調(diào)用的函數(shù)的接口,放在頭文件里面關(guān)于頭文件的制作各式,網(wǎng)上貌似可以搜到……
哈哈,選我吧!庫分靜態(tài)庫和動態(tài)鏈接庫,靜態(tài)庫以lib結(jié)尾,被編譯器里的鏈接器識別。windows下動態(tài)庫以dll結(jié)尾,被操作系統(tǒng)加載以模塊方式映射到進程地址空間。一般初學者先學會創(chuàng)建的是靜態(tài)庫。靜態(tài)庫是一個無需重定位的函數(shù)集。怎么做到無需重定位呢?這是編譯器做的編譯工作,例如它指定開頭的位置作為基址,剩下的代碼用到的都是相對偏移。這樣,這段二進制代碼可以被放在內(nèi)存中的任何位置執(zhí)行,被寫入了lib文件里。在lib文件里,包含了函數(shù)名與函數(shù)地址組成的結(jié)構(gòu)體,通過它編譯器可以找到lib文件里需要的二進制代碼并以靜態(tài)聯(lián)編的方式寫入我們調(diào)用它的exe文件里。這種代碼是被塞進exe文件里而無需修改,并在程序執(zhí)行時被用到。為了讓庫被別人調(diào)用,我們可以寫一個頭文件.h,包含函數(shù)原型及聲明。
簡單的一個例子,但是基本的程序編譯的思想都在里面了,具體的需要你自己體會和查資料
跟著下面的步驟走
------------------------
第一步:我的電腦-屬性-高級-環(huán)境變量
添加3個變量
1.名字:path 值:vc的安裝目錄里面包含cl.exe的bin目錄路徑+";"+vc目錄下包含mspdb80.dll的目錄的路徑
比如我的是D:\Program Files\Microsoft Visual Studio 8\VC\bin;D:\Program Files\Microsoft Visual Studio 8\Common7\IDE;
2.名字:include 值:vc安裝目錄下的include目錄,主要是為了找到頭文件,我的是D:\Program Files\Microsoft Visual Studio 8\VC\include;D:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\Include;
3.名字:lib 值:vc目錄下包含庫文件的目錄路徑
我的是D:\Program Files\Microsoft Visual Studio 8\VC\lib;D:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\Lib;
第二步:需要下面兩個文件
//-------------libdemo.c
#include stdio.h
void lib_func()
{
printf("this routine in lib\n");
}
//------------main.c
void lib_func();
int main(int argc, char *argv[])
{
lib_func();
}
第三步:命令
cl /c libdemo.c '編譯libdemo.c 生成libdemo.obj
lib libdemo.obj '生成libdemo.lib 庫文件
cl /c main.c '編譯main.c
link main.obj libdemo.lib '生成main.exe
---------------------------------------------------
呵呵 加點東西,參看4樓的建議,在做個dll,COM組件就不做了,有點復雜了
1。把libdemo.c 稍微改下
//-------------libdemo.c
#include stdio.h
__declspec (dllexport) void lib_func()
{
printf("this routine in lib\n");
}
2。命令
cl /c libdemo.c main.c
link libdemo.obj /dll '生成libdemo.lib
link main.obj libdemo.lib
步驟如下:
1、新建一個Visual C++的“Win32項目”,建立一個空項目。
2、建立完成后,右鍵點擊右邊的“解決方案”中的“源文件”。
3、選擇“添加”,然后添加“新建項”。
4、選擇“Visual C++”中的C++文件,點“添加”。
5、在新加的C++文件里面寫好代碼,然后保存。
6、編譯運行即可(快捷鍵Ctrl+F5)。
網(wǎng)站題目:建立自己的函數(shù)庫c語言 C語言建立函數(shù)
標題URL:http://vcdvsql.cn/article14/doodige.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供Google、服務(wù)器托管、網(wǎng)頁設(shè)計公司、移動網(wǎng)站建設(shè)、網(wǎng)站排名、定制網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)