VC++與Matlab混合編程的快速實(shí)現(xiàn)

VC++與Matlab混合編程的快速實(shí)現(xiàn)

ID:41032955

大小:31.50 KB

頁數(shù):4頁

時間:2019-08-14

VC++與Matlab混合編程的快速實(shí)現(xiàn)_第1頁
VC++與Matlab混合編程的快速實(shí)現(xiàn)_第2頁
VC++與Matlab混合編程的快速實(shí)現(xiàn)_第3頁
VC++與Matlab混合編程的快速實(shí)現(xiàn)_第4頁
資源描述:

《VC++與Matlab混合編程的快速實(shí)現(xiàn)》由會員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在工程資料-天天文庫。

1、VC++與Matlab混合編程的快速實(shí)現(xiàn)劉建偉吉林大學(xué)朝陽校區(qū)電子科學(xué)與工程學(xué)院電子信息工程系(?長春?130026)摘?要:?許多工程軟件需要用到復(fù)雜的數(shù)學(xué)算法。VC++能夠形成各種用戶界面,?并可以直接與系統(tǒng)及底層硬件交換數(shù)據(jù)。因此研究VC++和Matlab?的混合編程具有很大的實(shí)際意義。該文討論了如何使用Matlab?的Complier?將*.m函數(shù)編譯為動態(tài)鏈接庫DLL,?提供給VC++調(diào)用的方法,?提供了一種VC++與Matlab?混合編程的快速實(shí)現(xiàn)。關(guān)鍵詞:?Matlab?VC++?MCC?Complier?動態(tài)鏈接庫DLLMatlab?作為當(dāng)今世界上應(yīng)用最為廣泛的數(shù)學(xué)軟件,?

2、具有非常強(qiáng)大的數(shù)值計算、數(shù)據(jù)分析處理、系統(tǒng)分析、圖形顯示甚至符號運(yùn)算的功能。已經(jīng)在如生物工程,?圖像處理,?語音處理,?雷達(dá)探空,?聲納探水,?地震探地,?以及控制論,?系統(tǒng)論等各個領(lǐng)域得到廣泛的應(yīng)用。它是一個完整的數(shù)學(xué)平臺,?在這個平臺上,?用戶只需寥寥數(shù)語就可以完成十分復(fù)雜的功能,?大大提高了工程分析計算、圖像處理的效率。但是Matlab?強(qiáng)大的功能只能在它所提供的平臺上才能使用,?即用戶必須在安裝Matlab?系統(tǒng)的機(jī)器上才能執(zhí)行*.m?文件。這樣當(dāng)用戶需要將在Matlab?下已開發(fā)完畢的復(fù)雜算法應(yīng)用到高級語言開發(fā)環(huán)境下時就帶來了問題,?是將現(xiàn)成的東西集成高級語言開發(fā)的程序中呢??還

3、是用高級語言再重新實(shí)現(xiàn)一遍??顯然大家所期望的是減少工作量,?最好能將Matlab?下開發(fā)好的程序或函數(shù)直接應(yīng)用到高級語言開發(fā)的程序中,?這就是Matlab?與高級語言的混合編程問題。VC+?+?是當(dāng)前Windows?下的主要編程語言之一,?它能方便地形成應(yīng)用軟件中所需要的各種用戶界面和工具并直接與系統(tǒng)及底層硬件交換數(shù)據(jù)。用VC++開發(fā)的系統(tǒng)具有容易維護(hù)升級、界面友好、代碼效率高、執(zhí)行速度快等一系列優(yōu)點(diǎn),?因此已成為目前應(yīng)用軟件開發(fā)中廣泛采用的主要工具之一因此,?如何將Matlab?與VC++進(jìn)行有效的混合編程廣受工程科研人員的關(guān)注。解決這個問題,?不僅能更好地發(fā)揮Matlab?強(qiáng)大的功能

4、,?還能快速地進(jìn)行軟件開發(fā),?尤其是當(dāng)軟件開發(fā)中需要實(shí)現(xiàn)復(fù)雜的數(shù)學(xué)算法、圖形處理時尤為迫切。研究VC+?+?與Matlab?的混合編程具有很大的實(shí)際意義。MATLAB?與Visual?C++結(jié)合的方法有多種,?但其實(shí)用程度與范圍不同。常用的方法有:(?1)?將Matlab?程序編譯成C/C++源文件并嵌入VC++;(?2)?在C/?C++程序中利用Matlabengine?調(diào)用Matlab?函數(shù);(?3)?在C/C++程序中直接使用Matlab?C/C++?Math?Library;?(4)將.m文件編譯成*.dll文件嵌入到VC++的程序中。基于實(shí)用性、易用性的考慮,?本文主要討論第四種

5、方法。另外隨著Matlab?版本的升級,?原來的math?library已經(jīng)并入了Compiler?之中,?是否是mathworks?比較推崇DLL?的方式呢??本文通過一個簡單的例子來說明Matlab?和VC++混編的具體過程(?環(huán)境為Matlab6.5&VC++6.0)。1?Matlab編譯環(huán)境的設(shè)置為了能夠使用Matlab?的Complier?將*.m函數(shù)文件編譯為動態(tài)鏈接庫DLL,必須對Matlab的環(huán)境做出相應(yīng)的配置。具體做法如下:在Matlab?的Command?Window?下輸入命令mbuild?–?setup,并根據(jù)Matlab?的提示選擇合適的編譯器,筆者使用的是Mic

6、rosoft?Visual?C++.過程如下>>?mbuild?-setupPlease?choose?your?compiler?for?building?standalone?MATLAB?applications:Would?you?like?mbuild?to?locate?installed?compilers?[y]/n?Select?a?compiler:[1]?Lcc?C?version?2.4?in?D:MATLAB6P5syslcc[2]?Microsoft?Visual?C/C++?version?7.0?in?C:Program?FilesMicrosof

7、t?Visual?Studio?.NET[3]?Microsoft?Visual?C/C++?version?6.0?in?D:Microsoft?Visual?Studio[0]?NoneCompiler:?3Please?verify?your?choices:Compiler:?Microsoft?Visual?C/C++?6.0Location:?D:Microsoft?Visual?StudioAre?th

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動畫的文件,查看預(yù)覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負(fù)責(zé)整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯誤,付費(fèi)完成后未能成功下載的用戶請聯(lián)系客服處理。