范冰冰外婆:浅析VC与matlab接口编程(一) - Kris Lee的日志 - 网易博客

来源:百度文库 编辑:九乡新闻网 时间:2024/05/08 08:39:56

浅析VC与matlab接口编程(一)

【术业☆专攻】 2007-12-01 16:15:10 阅读85 评论0   字号: 订阅

浅析VC与matlab接口编程(一)

作者:邓科

下载源代码

  Matcom是mathTools公司推出的一个能将M文件转化成相同功能C++代码的工具。相比Matlab自带的编译器Compiler,用Matcom转化代码要简单和方便 得多。本文将结合作者编程经验,以VC6.0和Matcom为例,详细介绍如何利用Matcom进行VC与Matlab的联合编程。
  Matcom安装安装Matcom前要已求安装VC6.0。在安装过程中出现选择编译器对话框,选择“是”(图一)。出现选择是否安装Matlab时,选“否”。其他选项采用默认设置。Matcom可以独立于Matlab运行,但需要外部的C++编译器,指定Matlab的位置是为了让编译文件中需要的一些系统函数找到路径用的。

                图一

  安装完成后,启动界面MIDEVA(图二)。MIDEVA集成开发环境包括命令行窗口、变量列表窗口、命令列表窗口和编译链接信息窗口等几部分,并有详细的帮助文档。

图二
Matcom命令输入方法与Matlab相同。如果安装在中文版操作系统时,输入命令前加一空格。(如图三)。

                  图三

下面详细介绍如何将m文件编译后放入VC中。
1、启动MIDEVA ,File->New,新建如下Test1.m文件:

x=1:0.1:10; y=sin(x); plot(x,y); 

将文件保存(如图四)。


    图四

m文件保存的默认位置为:matcom安装目录\matcom45,生成的C++文件保存的默认位置为:matcom安装目录\matcom45\Debug\,本例matcom安装目录为C盘 即 C:\matcom45\Debug\,在该目录下将会产生Test1.h、Test1.cpp、Test1.r 、Test1.obj文件。

2、在VC中用MFC Wizard(exe)创建一个基于对话框名为Example的工程。
在面板上添加一个ID为IDC_BUTTON1按扭。

3、将C:\matcom45\Debug目录下的Test1.cpp文件的内容拷贝到
void CExamleDlg::OnButton1()下,(如图五)。


              图五

4、将C:\matcom45\lib\下的matlib.h 和v4501v文件和C:\matcom45\debug下的Test1.h文件拷贝到工程Example目录下,然后在VC中将库文件和头文件加入到工程中:工程->添加工程->Files,选择刚刚拷贝到Example目录下的matlib.h 、v4501v和Test1.h文件(如图六)。


           图六

5、在ExamleDlg.cpp中加入如下代码:

#include "matlib.h"#include "Test1.h"

6、在void CExamleDlg::OnButton1()中分别添加一个初始化类库调用函数”initM(MATCOM_VERSION)”和一个结束类库调用函数”exitM()”(如图七)。


              图七

运行程序,点击画图按扭(如图八)。


                              图八

  程序的release版本需要ago4501.dll、v4501v.dll、v4501.lib三个文件的支持。以上只是介绍了VC和Matcom接口编程的一个简单例子,功能并不完善,也远远达不到一个软件所要求的水平,但只要熟悉了VC和Matcom接口编程的基本原理和方法,相信大家一定能够编出优秀的软件。

如果有什么问题可以联系我。我的QQ:44760299 邮箱:c_dinco@sina.com

http://hi.baidu.com/webas/blog/item/a6c2a6341f8992b5d0a2d3f7.html

浅析VC与matlab接口编程(一) - Kris Lee的日志 - 网易博客 浅析VC与matlab接口编程(一) - VC知识库文章 浅析VC与matlab接口编程(一)(转载) vc和matlab的混合编程 - Silence的日志 - 网易博客 博士的学习经验!读后,令人茅塞顿开的科研经典之作 - Kris Lee的日志 - 网易博客 精通 VC 与 MATLAB 联合编程<九>用户输入数据,完成数据的拟合(转载) limeSurvey 简体中文说明 - Roy Lee的日志 - 网易博客 eclipse如何连接oracle数据库? - Lee的日志 - 网易博客 VC操作Excel - hope多多的日志 - 网易博客 浅析银行临柜业务中的法律风险与对策 - mine522的日志 - 网易博客 暴强密码破解多方案... - Roy Lee的日志 - 网易博客 Symbian http 编程总结 - Simon的日志 - 网易博客 公式编程教材 - tayang的日志 - 网易博客 仲景用附子方法浅析 - 自由自在的日志 - 网易博客 Matlab与SQL Server数据库编程指南 - 《MATLAB和数据库混合编程案例分析》 MATLAB技术论坛 Matlab生成,vb、等的调用! - flider的日志 - 网易博客 Motorola GT Oncore接收器的接口与监测编程 C#接口-接口的继承 - C#编程 - Asp.net C# 学习与研究 BP神经网络的设计实例(MATLAB编程) VC++动态链接库编程总结一 详解用VC实现bmp位图的打开 - fengqing888的日志 - 网易博客4563 富含VC 胡萝卜素 钾的蔬菜和水果 - 榴榴的日志 - 网易博客 用VC实现自删除程序 - 爱上未来的你的日志 - 网易博客 VC经典的编译错误解决办法(转载) - jacky的日志 - 网易博客