此程序有3個文件,分別為 export.h 、export.c 、main.c
export.h 文件內容
/*此頭很有必要,別人在調用的時候知道有哪些方法*/ #ifdef BUILD_DLL #define EXPORT __declspec(dllexport) #else #define EXPORT __declspec(dllimport) #endif EXPORT void export(void);
export.c 文件內容
#include<stdio.h> #include "export.h" EXPORT void export(void) { printf("HELLO DLL\n"); }
main.c 文件內容(如果僅編譯DLL文件,不需要此文件參與)
#include "export.h" int main() { export(); return 0; }
編譯生成DLL
D:\>gcc -shared -o export.dll export.c
至此DLL已編譯完成,其他程序可調用。
現在編譯 main.c 調用此DLL
D:\>gcc -o main.exe main.c -L./ -lexport
執行 main.exe
D:\>main.exe
HELLO DLL