有一个DLL CRD.DLL;里有三个函数INT DR_READ();INT DR_WRITE();
在.h里输入,
typedef int(*DR_READ)(void); //请问这句什么含义,能说的具体点吗?
typedef int(*DR_WRITE)(void);//我只是了解typedef a b这样简单的含义
……
HINSTANCE  gLibAngel;
DR_READ Dr_Read;
DR_WRITE Dr_Write;
……
在CPP中加入如下代码:
gLibAngel = NULL;
gLibAngel = LoadLibrary("CRD.dll");//载入动态库
Dr_Read = (DR_READ)GetProcAddress(gLibAngel, "DR_READ"); 
Dr_Write = (DR_WRITE)GetProcAddress(gLibAngel, "DR_WRITE"); 

解决方案 »

  1.   

    typedef int(*DR_READ)(void); typedef int(*DR_WRITE)(void);
    定义了函数指针类型,该类型指针所指向的函数返回值类型为int,参数表为void.
      

  2.   

    DR_READ,DR_WRITE是类型名.
    DR_READ Dr_Read;
    DR_WRITE Dr_Write;
    这两个就是函数指针变量了.
    实际上,无需再定义DR_WRITE,因为这个类型和DR_READ是一样的.
      

  3.   

    线定义函数指针类型
    然后创建指向函数的指针变量。
    然后打开dll
    从dll里边获得相应的函数指针
    调用函数