第一范文网 - 专业文章范例文档资料分享平台

VC++与Matlab混合编程之一:调用Matlab引擎

来源:用户分享 时间:2025/7/27 12:05:11 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

VC++与Matlab混合编程之一:调用Matlab引擎

在VC中调用MATLAB的,总结有以下几种方法:1、是调用Matlab引擎;2、是调用Matlab中M函数转化成的dll文件;3、调用Matlab中M函数转化成c语言的函数。 本节之讲解方法1,因为方法1最简单,只要配置好VC的相关设置就可以了。 下面是自己的实践过程: 一、设置VC相关属性。

(1)Visual C++6.0 编译环境的设置:通过菜单 Tools/ Options,打开Visual C++6.0设置属性页,进入Directorie页面,在 Show Directories for下拉列表中选择Include Files,添加路径:\\extern\\include(在Matlab的安装路径下);再选择下拉列表中的 Library Files,添加路径:\\extern\\ lib\\win32\\Microsoft(在Matlab的安装路径下,但是在我查看资料的时候看到很多是\\extern\\ lib\\win32\\Microsoft\\msvc60这个路径,但是我用的是MatlabR2009a,或许这里设置有点区别)。看资料说编译环境或许只需设置一次,但是我在设置的时候每次都要设置。

(2)添加库文件: 通过菜单Projects|settings,进入 Link 页面,在 Object/Library Modules 框中,添加库文件名:libmx.lib 、libmat.lib 、libeng.lib。每个新的工程文件都要单独添加库文件。

二、在VC中通过MATLAB引擎调用Matlab函数命令: 现在以画一个正弦曲线的图为例。

1、新建一个MFC程序,命名Test,基于对话框。

2、在Testdlg.cpp中加入头文件: #include \ #include

3、添加botton Test,并添加点击命令,加入代码如下: voidCTestDlg::OnTest() {

// TODO: Add your control notification handler code here Engine *ep;

if (!(ep = engOpen(NULL))) //打开Matlab引擎 {

MessageBox (\ exit(-1); }

engSetVisible(ep, 0);

engEvalString(ep,\

engEvalString(ep,\

engEvalString(ep,\会显示出图 }

4、运行程序,单击Test按钮,运行结果如下图:

至此,利用VC调用Matlab引擎结束,可以运行Matlab中的各种函数,作图等。此种方法的特点是,非常简单和方便,要求运行程序的电脑必须装有Matlab软件,因此也具有不能脱离Matlab环境的弱点。

备注:此次测试是基于Visual C++6.0和Matlab R2009a的环境。

上面例子是VC和Matlab的混合编程的一个简单应用,在实际的数值计算,控制系统开发等工程应用中,可以很好的利用VC和Matlab的混合编程技术,从而简化应用程序的开发工作量。

下一篇文章将推出第二种方法:利用Matlab生成DLL文件,然后用VC调用DLL文件,此种方法是将Matlab写的函数封装在动态链接库里面,然后用VC调用动态链接库,优点是程序的运行可以脱离Matlab的环境独立运行。

VC++与Matlab混合编程之一:调用Matlab引擎.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c0tcj68l46e17c183744w_1.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top