c語言編寫庫函數
1. c語言:如何自己做庫函數
簡單的一個例子,但是基本的程序編譯的思想都在裡面了,具體的需要你自己體會和查資料
跟著下面的嘩陵步驟走
------------------------
第一步:我的電腦-屬性-高級-環境變數
添加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
2. c語言庫函數
如果你能找到你的編譯器的庫文件放在哪裡,那麼只要把你的自己編寫的函數放在編譯器的庫函數的文件中,直接引用就可以。
但是很多編譯器的庫函數是不開放的,你很難找到庫函數的文件在哪。
因此,你只能把自己寫的函數電腦的某個盤里,如d:\\盤,引用的時候直接引用就行。比如,自己寫個文件(myfile.h)放在 d
盤,即路徑為 d:\\myfile.h
舉個例子:
【1.】把myfile.h文件放在d盤
可以新建一個記事本文件(後綴.txt),把文件名改為(myfile.h),在該文件中添加如下內容:
// myfile.h 自定義一個的輸出 * 圖行的文件,相當於庫函數
#include <stdio.h>
void Display_San(int n) //列印*三角形
{
int i;
for(i=0; i<n; i++)
{
printf(" * \n");
printf(" *** \n");
printf(" ***** \n");
printf(" ******* \n");
printf(" ********* \n");
printf("*********** \n");
}
}
void Display_Si(int n) //列印*矩形
{
int i;
for(i=0; i<n; i++)
{
printf("* * * * * *\n");
printf("* *\n");
printf("* *\n");
printf("* *\n");
printf("* *\n");
printf("* * * * * *\n");
}
}
//還可以有更多的函數.......放在一個文件中,成了自定義的庫函數
【2.】在主函數中,引入該文件:
#include "d:\\myfile.h" //引入自定義的文件,該文件包含兩個函數(即自定義的庫函數)
void main()
{
Display_San(2); //在d:\\myfile.h文件中定義了
Display_Si(3); //在d:\\myfile.h文件中定義了
}
這就成了引用庫函數了!!!!!!
3. C語言中,如何自己定義一個庫函數
1、存為xx.h文件放在自創的文件夾下氏坦,聲明#include「殲拆桐xx.h」 2、還御返可以存為xx.h文件直接與系統庫文件放一起,聲明#include<xx.h>(這樣會快些)
4. 怎麼在c語言中自己寫庫函數
1、不同的系統開發函數庫的具體步驟是不一樣的,這主要決定於編譯、鏈接環境。
2、不同的庫開發方式也不一樣,現在主流的庫開發有兩種,一種是靜態庫,一種是動態庫,兩者的本質區別是庫代碼是否和程序融合在一起,如果組裝在一起就是靜態庫,如果不組裝在一起,即為動態庫,現在操作系統提供的多數孝首是動態庫,如Linux平台的.so文件,windows平台的DLL文件。
3、吵慎配以Windows平台為例,用升指戶可以通過Vc/vs等IDE集成開發環境,生成DLL工程,然後編寫def文件進行導出。
5. 如何製作一個c語言函數庫
一、lib庫的創建;
建議使用VC來製作比較方便,以VC2005為例:
新建》項目》Win32控制台應用程序》靜態庫》完成。
然後在裡面編寫一個函數,編譯一下庫就作好了。
把對外使用的函數新建一個頭文件聲明;
二、lib庫頃粗的使用
新建一個程此乎並序,然後引用上面的頭文件,就可以使用庫里的函數。然後森跡把lib庫在工程配置裡面加入:屬性》鏈接器》輸入》附加依賴項》填入你的lib庫,可以加路徑。然後編譯應該就可以了。
祝 你 好 運!
6. C語言中什麼是庫函數
庫函數(Library function)是把函數放到庫里,供別人使用的一種方式。.方法是把一些常用到的函數編完放到一個文件里,供不同的人進行調用。調用的時候把它所在的文件名用#include>加到裡面就可以了。一般是放到lib文件里的。
一般是指編譯器提供的可在c源程序中調用的函數。可分為兩類,一類是c語言標准規定的庫函數,一類是編譯器特定的庫函數。
由於版權原因,庫函數的源代碼一般是不可見的,但在頭文件中你可以看到它對外的介面
庫函數簡介。
C語言的語句十分簡單,如果要使用C語言的語句直接計算sin或cos函數,就需要編寫頗為復雜的程序。因為C語言的語句中沒有提供直接計算sin或cos函數的語句。又如為了顯示一段文字,我們在C語言中也找不到顯示語句,只能使用庫函數printf。
C語言的庫函數並不是C語言本身的一部分,它是由編譯程序根據一般用戶的需要編制並提供用戶使用的一組程序。C的庫函數極大地方便了用戶,同時也補充了C語言本身的不足。事實上,在編寫C語言程序時,應當盡可能多地使用庫函數,這樣既可以提高程序的運行效率,又可以提高編程的質量。
這里調用的是靜態庫。
函數庫:函數庫是由系統建立的具有一定功能的函數的集合。庫中存放函數的名稱和對應的目標代碼,以及連接過程中所需的重定位信息。用戶也可以根據自己的需要建立自己的用戶函數庫。
庫函數:存放在函數庫中的函數。庫函數具有明確的功能、入口調用參數和返回值。
連接程序:將編譯程序生成的目標文件連接在一起生成一個可執行文件。
頭文件:有時也稱為包含文件。C語言庫函數與用戶程序之間進行信息通信時要使用的數據和變數,在使用某一庫函數時,都要在程序中嵌入(用#include)該函數對應的頭文件。
由於C語言編譯系統應提供的函數庫尚無國際標准。不同版本的C語言具有不同的庫函數,用戶使用時應查閱有關版本的C的庫函數參考手冊。我們以Turbo C為例簡介一下C的庫函數,並附錄中給出了Turbo C的部分常用庫函數。
7. 如何編寫c的自定義庫函數
你可以把自己寫的函數庫存放到一個目錄中,不一定要是VC的include目錄,這個目錄可以自己隨便放的。
在使用時,你可以""用雙引號來指定自寫義庫的路徑,這樣也可春答拆以引用出來。
最方便的是將VC的包含目錄中加上自定義庫扒棗的路徑,這樣你就可以直接使用包含系統庫一樣去包含舉猛自定義庫。