matlab与C混合编程入门

使用的平台是matlab2016b 64位和VS2015社区版

1、打开VS,新建项目

第一步:选择Win32下的win32项目,命名为xxx,此处命名为wwy,确定。(不是选择的win32控制台应用程序。选错了,下面的就不要看了)

 

 

 

 

第二步:应用程序类型,选择DLL,附加选项选择空项目,点击完成。

 

因为matlab是64位,所以调试工具也选择64位。

 

第三步:在源文件里面新建一个模块定义文件.def,文件的名称与项目,C文件名称一致。

 

更改.def的内容为

 

在源文件里面新建一个文件.c,文件的名称与项目,C文件名称一致。

.c文件的编写具体查看mexFunction函数的使用方法。

第四步:配置项目属性

平台选择x64,常规项中的目标文件扩展名改为.mexw64。如图

 

VC++目录中可执行文件添加:

 

添加过.c文件后会出现c/c++,附加包含目录和上面相同。

 

在链接器->常规->附加库目录中添加: C:\Program Files\MATLAB\R2016b\extern\lib\win64\microsoft

 

输入->附加依赖项添加libmx.lib;libmex.lib;libmat.lib;如图

 

在添加过.def文件后,模块定义文件处自动会显示xxx.def。

至此,项目配置完成。

生成.mexw64文件。所在位置在红色框中标出。

 

 

如果在生成mex文件时出现"warning LNK4017: // 语句不支持目标平台;已忽略"或在MATLAB中出现“MEX-file 'E:\。。。\wwy.mexw64' 无效”错误,则说明定义的.def文件出错。

首先注意1:不能将.c或其他后缀名文件改为.def文件。必须按上述方法新建模块定义文件,

2:定义文件中有拼写错误。

matlab与C混合编程调试

1.编好函数,生成mexw64文件,放在与matlab .m文件的同一个文件夹中。

2.打开vs,选择“调试”->“附加到进程”->选择MATLAB.exe

3.设置断点(此时断点可能显示为空心+叹号,无视它,继续)

4.在matlab中,运行程序即可。这时候可以发现vs中程序运行到了断点处。

5.over

参考文章网址:https://wenku.baidu.com/view/83ba65b880c758f5f61fb7360b4c2e3f57272590.html

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值