#include "max.h"
int Max(int a[],int len)
{
int temp=0;
temp=a[0];
for(int i=1;i<len;i++)
{
if(a[i-1]<a[i])
temp=a[i];
}
return temp;
}
extern "C" _declspec(dllexport) int Max(int a[],int len);
调用
#include "max.h"
// 定义MAX函数指针类型
typedef (*PFNMAX)(int[],int);
void main()
{
HINSTANCE hdll=NULL;
PFNMAX pfnMax;
int a[]={1,2,3,4,5,6,7,8,9,8,7,6,5,4,3,2,1,0};
int len=sizeof(a)/sizeof(int);
int res=0;
cout<<"number:\n";
for(int i=0;i<len;i++)
cout<<a[i]<<" ";
cout<<endl;
// LoadLibrary函数装载DLL
hdll=LoadLibrary("Win32DLlExample.DLL");
// GetProcAddress获得Max函数的地址
pfnMax=(PFNMAX)GetProcAddress(hdll,"Max");
// 通过函数指针间接调用Max函数
res=pfnMax(a,len);
// 释放DLL
FreeLibrary(hdll);
cout<<"the max number is: "<<res<<endl;
}