从品牌网站建设到网络营销策划,从策略到执行的一站式服务
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
(1)编写程序时,你要包含(#include "什么.h") dll文件作者世备提供 的 头文件(.h文件) 。
程序里,便和普通函数调用一样,去调用猛饥它的函数。
(2)程序编译时,你要链接 dll文件作者提供 的 (.lib文件) 库文件。
当然,你可以在源程序里把.lib 名字 写上,编译时自动去链接,例子:
#pragma comment (lib, "什么.lib")
(3)执行搜知毁时,要有 .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;
}
成都网站建设公司地址:成都市青羊区太升南路288号锦天国际A座10层 建设咨询028-86922220
成都快上网科技有限公司-四川网站建设设计公司 | 蜀ICP备19037934号 Copyright 2020,ALL Rights Reserved cdkjz.cn | 成都网站建设 | © Copyright 2020版权所有.
专家团队为您提供成都网站建设,成都网站设计,成都品牌网站设计,成都营销型网站制作等服务,成都建网站就找快上网! | 成都网站建设哪家好? | 网站建设地图