C語言 Win動態庫

2021-09-13 23:13:32 字數 963 閱讀 5900

1.建立標頭檔案mydll.h

#pragma once

//內部函式,動態庫自己呼叫,其他程式不能呼叫

//外部函式,外部呼叫

//__declspec(dllexport)匯出函式

__declspec(dllexport) int myadd(int a, int b);

2.建立原始檔mydll.c

#include "mydll.h"

int myadd(int a, int b)

3.右鍵專案,選擇屬性,在常規裡將配置型別改為動態庫(.dll)

4.右鍵專案,重新生成,在debug資料夾下得到project.lib (物件檔案庫)和project.dll(動態庫),庫的名稱是專案名稱

我們需要把project.lib,project.dll檔案和mylib.h發給別人使用

1.將動態庫三個檔案拷貝到當前專案資料夾下

#include #include #include #include "mydll.h"//包含動態庫的標頭檔案

#pragma comment(lib,"./tesdll.lib")//匯入動態庫

int main(int argc, char** ar**)

編譯時不引入,執行時引用,所以不占用空間

python只需要把.dll檔案複製到專案目錄下即可

import ctypes

lib = ctypes.cdll.loadlibrary("./tesdll.dll")

lib.myadd(10,20)

C語言 Win靜態庫

1.建立標頭檔案mylib.h pragma once int myadd int a,int b 2.建立原始檔mylib.c include mylib.h int myadd int a,int b 3.右鍵專案,選擇屬性,在常規裡將配置型別改為靜態庫 lib 4.右鍵專案,重新生成,在deb...

C語言 靜態庫與動態庫

一.靜態庫 靜態庫 要被包含到源程式中的庫 1.優點執行速度快 2.缺點占用系統資源比較多 3.使用的場合對時間要求很高的場合 4.靜態庫的製作 1 把所有的源程式 c檔案 製作成目標檔案 o 檔案 gcc c mul.c o mul.o gcc c sub.c o sub.o gcc c add....

c語言呼叫c語言的so動態庫

1.環境 ubuntu14.o4 gcc 4.8.4 2.庫檔案生成 1 原始碼 int add int a,int b 2 生成庫檔案 cd到cltest.c所在目錄,輸入命令 gcc shared o libcltest.so cltest.c會在當前目錄生成檔案libcltest.so 3.主...