您的位置:

c调用c语言dll,c++调用c语言

本文目录一览:

如何在C语言中调用C++编写的DLL中的函数

C语言没办法直接调用C++库

要调用C++的库

必须加一层封装

即 先写一个C++文件, 对每个要调用的C++DLL中的函数func_name, 封装成

extern "C"

{

return_type func_name_C(list)

{

return func_name(list);

}

}

这样的形式。

然后 把这个c++文件, 封装成dll

C文件调用这个dll里面的函数, 间接调用原始DLL

C语言如何调用DLL

//dll

#include windows.h

extern "C" //保持C语言文件

void _declspec ( dllexport ) tryProc()       //定义函数

{

MessageBox(NULL,_T("a"),_T("a"),MB_OK);

}

-------------------------------------

//C

#include windows.h

int main()

{

HMOUDLE dll = LoadLibrary(/*DLL文件名*/);

if(dll != NULL)

{

    FARPROC try = GetProcAddress(dll,"tryProc");

    if(try != NULL)

    {

        tryProc();//假如函数有返回值,可以用try()得到返回值

       /*_asm call tryProc*/

    }

}

return 0;

}

C语言调用dll

这个相对路径是你当前代码存放的位置.

实际应用中相对路径比绝对路径实用多了.

比如你可以再代码路径上再创建一个文件夹,命令dll,里面放所有的dll文件

那么你此时路径".\\dll\\test.dll"

你可以发给我,我帮你看看

c语言怎么调用dll文件

(1)编写程序时,你要包含(#include "什么.h") dll文件作者提供 的 头文件(.h文件) 。

程序里,便和普通函数调用一样,去调用它的函数。

(2)程序编译时,你要链接 dll文件作者提供 的 (.lib文件) 库文件。

当然,你可以在源程序里把.lib 名字 写上,编译时自动去链接,例子:

#pragma comment (lib, "什么.lib")

(3)执行时,要有 .dll 文件. 放在当前文件夹或系统文件夹里。