1. 在VC中新建win32控制台工程,该工程调用动态链接库my.dll中的函数add,实现加法,代码如下
#include <stdio.h> #include <windows.h> typedef int(*lpAddFun)(int, int);//宏定义函数指针类型 int main(int argc, char *argv[]) { HINSTANCE hDll;//DLL句柄 lpAddFun addFun;//函数指针 hDll = LoadLibrary("my.dll");//加载库 if (hDll != NULL) { addFun = (lpAddFun)GetProcAddress(hDll, "add");//获得add函数指针 if (addFun != NULL) { int result = addFun(2, 3); printf("%d\n", result); } FreeLibrary(hDll); } return 0; }
2. 在VC中新建动态链接库my,其中有一加法函数add,代码如下
extern "C" __declspec(dllexport) int add(int, int);//导出库函数add int add(int a, int b) { return a + b; }将该工程编译所得的dll与1中的控制台工程放到同一目录下,即可调用该dll。