程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> VC >> 關於VC++ >> 淺析VC與matlab接口編程(一)

淺析VC與matlab接口編程(一)

編輯:關於VC++

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 郵箱:[email protected]

本文配套源碼

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved