在vc++6.0中new乙個名稱為libtest的static library工程,並新建lib.h和lib.cpp兩個檔案,lib.h和lib.cpp的源**如下:
//檔案:lib.h
#ifndef lib_h
#define lib_h
extern "c" int add(int x,int y); //宣告為c編譯、連線方式的外部函式
#endif
//檔案:
lib.cpp
#include "lib.h"
int add(int x,int y)
編譯這個工程就得到了乙個.lib檔案,這個檔案就是乙個函式庫,它提供了add的功能。將標頭檔案和.lib檔案提交給使用者後,使用者就可以直接使用其中的add函式了。
下面來看看怎麼使用這個庫,在libtest工程所在的工作區內new乙個libcall工程。libcall工程僅包含乙個main.cpp檔案,它演示了靜態鏈結庫的呼叫方法,其源**如下:
#include
#include "../lib.h"
#pragma comment( lib, "..//debug" ) //指定與靜態庫一起連線
int main(int argc, char* argv)
**中#pragma comment( lib , "..//debug" )的意思是指本檔案生成的.obj檔案應與libtest.lib一起連線。
如果不用#pragma comment指定,則可以直接在vc++中設定,依次選擇tools、options、directories、library files選單或選項,填入庫檔案路徑即可。
編寫靜態鏈結庫
在 vc 6.0 中new 乙個名稱為 libtest 的static library 工程,並新建 lib.h 和lib.cpp 兩個檔案,lib.h 和lib.cpp 的源 如下 檔案 lib.h ifndef lib h define lib h extern c int add int x,...
靜態鏈結庫和動態鏈結庫編寫
lib.h int add int x,int y lib.cpp include lib.h include stdafx.h int add int x,int y libtest.cpp include lib.h pragma comment lib,lib.lib int main int...
動態鏈結庫 靜態鏈結庫
包含標頭檔案和庫 idir 指定編譯查詢標頭檔案的目錄,常用於查詢第三方的庫的標頭檔案,例 gcc test.c i.inc o test。ldir 指定鏈結時查詢lib的目錄,常用於查詢第三方庫。llibrary 指定額外鏈結的lib庫 巨集定義 dmacro 以字串 1 預設值 定義 macro...