數(shù)據(jù)結(jié)構(gòu)歷年考研真題詳解與解析 中文pdf完整版860KB / 03-31
自用C++學(xué)習(xí)筆記(附2024面經(jīng)) 中文完整版PDF2.95MB / 03-13
C++基礎(chǔ)與提高(王桂林) 第四版 中文pdf完整版3.5MB / 01-23
C語(yǔ)言深度進(jìn)階篇 v3 中文pdf完整版18.4MB / 01-22
零基礎(chǔ)入門(mén)C語(yǔ)言(全) 王桂林 中文pdf完整版4.7MB / 01-21
C語(yǔ)言程序設(shè)計(jì)第4版何欽銘 課后習(xí)題及答案+課件 中文pdf完整版4.7MB / 01-06
C++編程MFC基礎(chǔ)教程 中文完整版PDF28.3MB / 01-06
Qt5.10 GUI完全參考手冊(cè) 中文完整版PDF9.50MB / 12-16
C++標(biāo)準(zhǔn)庫(kù)參考(STL) 完整版PDF27.9MB / 11-05
C++編程學(xué)習(xí)與實(shí)踐案例 中文完整版PDF1.55MB / 09-24
-
-
-
C++基礎(chǔ)與提高(王桂林) 第四版 中文pdf完整版 C/C++ / 3.5MB
-
C語(yǔ)言深度進(jìn)階篇 v3 中文pdf完整版 C/C++ / 18.4MB
-
-
C語(yǔ)言程序設(shè)計(jì)第4版何欽銘 課后習(xí)題及答案+課件 中文pdf完整版 C/C++ / 4.7MB
-
C++編程MFC基礎(chǔ)教程 中文完整版PDF C/C++ / 28.3MB
-
Qt5.10 GUI完全參考手冊(cè) 中文完整版PDF C/C++ / 9.50MB
-
-
C++編程學(xué)習(xí)與實(shí)踐案例 中文完整版PDF C/C++ / 1.55MB
詳情介紹
Matlab程序在MCR環(huán)境下與在Matlab環(huán)境下執(zhí)行的效率相同,因此,通過(guò)編譯Matlab程序不會(huì)提高M(jìn)atlab程序的效率。
MCR的啟動(dòng)時(shí)間與Matlab程序的啟動(dòng)時(shí)間相同,在混合程序設(shè)計(jì)中應(yīng)考慮這一點(diǎn)。
在C/C++程序中無(wú)論采用哪種調(diào)用方式調(diào)用Matlab程序,最終結(jié)果都是由MCR執(zhí)行Matlab程序。
由于Matlab編譯器只生成Matlab接口文件,而MCR接口一般會(huì)采用兼容設(shè)計(jì),因此,與Matlab 6.5及以前版本的軟件相比,用戶(hù)開(kāi)發(fā)C/C++混合程序設(shè)計(jì)的復(fù)雜度降低,可繼承性提高。
由于采用MCR執(zhí)行Matlab程序而不是將Matlab程序編譯為C/C++程序,Matlab函數(shù)和工具箱中可編譯的部分大大增加,為用戶(hù)開(kāi)發(fā)混合編程提供了方便。
正是存在這些諸多不同,原有的C/C++與Matlab混合程序設(shè)計(jì)的具體實(shí)現(xiàn)方法需要進(jìn)行修正。為此,筆者對(duì)《精通Matlab與C/C++混合程序設(shè)計(jì)》第1版中的內(nèi)容進(jìn)行了相應(yīng)增刪或修正,形成了本書(shū)的內(nèi)容。
所謂“萬(wàn)變不離其宗”,雖然Matlab編譯器的架構(gòu)發(fā)生了很大的變化,但Matlab與C/C++混合程序設(shè)計(jì)還是繼承了原有思路。讀者在應(yīng)用中可根據(jù)自己的需求選擇Matlab調(diào)用C/C++程序(MEX文件)、將Matlab程序編譯為獨(dú)立可執(zhí)行文件、C/C++程序調(diào)用Matlab引擎、C /C++程序調(diào)用Matlab程序編譯后的動(dòng)態(tài)鏈接庫(kù)以及C/C++程序調(diào)用Matlab程序編譯后的COM組件等方式進(jìn)行。
Matlab調(diào)用C/C++程序通過(guò)將其編譯為MEX文件來(lái)實(shí)現(xiàn),Matlab提供了一組C語(yǔ)言API函數(shù)供用戶(hù)調(diào)用。這組API函數(shù)是Matlab與用戶(hù)C程序之間的橋梁。通過(guò)調(diào)用C/C++程序編譯的MEX文件,用戶(hù)可以將Matlab程序中運(yùn)算效率不高的代碼用C/C++來(lái)實(shí)現(xiàn),從而提高計(jì)算效率。
C/C++調(diào)用Matlab程序用戶(hù)可以選擇調(diào)用Matlab程序編譯后的動(dòng)態(tài)鏈接庫(kù)或Matlab程序編譯后的COM組件,這兩種調(diào)用方法的執(zhí)行效率是相同的。動(dòng)態(tài)鏈接庫(kù)方式實(shí)現(xiàn)起來(lái)比較簡(jiǎn)單,COM組件方式實(shí)現(xiàn)起來(lái)較復(fù)雜。除此之外,C/C++可以通過(guò)Matlab引擎直接執(zhí)行Matlab程序,但這種方式不能脫離Matlab環(huán)境執(zhí)行。
另外,書(shū)中還介紹了另外兩種Matlab與C/C++混合程序設(shè)計(jì)的方法:Matcom C/C++數(shù)學(xué)庫(kù)和Matlab C++數(shù)學(xué)庫(kù)。其中,Matcom是第一個(gè)可以將Matlab *.m文件編譯為C/C++代碼的編譯器。Matcom可以直接將m文件編譯為C/C++代碼,但只支持Matlab 5.3版?,F(xiàn)在一般情況下沒(méi)有必要使用Matcom編譯Matlab程序,但Matcom的C++矩陣庫(kù)仍然有一定的使用價(jià)值。Matlab C++數(shù)學(xué)庫(kù)是Matlab提供的一組封裝好的矩陣運(yùn)算數(shù)學(xué)庫(kù),其使用方法和Matlab環(huán)境中的編寫(xiě)方法十分類(lèi)似。如果用戶(hù)用Visual C++實(shí)現(xiàn)用戶(hù)界面,而又希望尋找一組高效的矩陣運(yùn)算數(shù)學(xué)庫(kù)的話,那么Matlab C++數(shù)學(xué)庫(kù)是一個(gè)不錯(cuò)的選擇。
Matlab與C/C++混合程序設(shè)計(jì)方法各有千秋,具體應(yīng)用還要結(jié)合開(kāi)發(fā)者的具體情況進(jìn)行選擇。但無(wú)論使用哪種方法,Matlab的數(shù)據(jù)結(jié)構(gòu)與C /C++的數(shù)據(jù)結(jié)構(gòu)之間的相互訪問(wèn)和轉(zhuǎn)換都是混合編程的關(guān)鍵,這也是本書(shū)重點(diǎn)所在,希望讀者在閱讀和開(kāi)發(fā)過(guò)程中引起注意。
本書(shū)所有的源代碼均可在附帶的光盤(pán)中找到。第7章“Matcom與C/C++”的開(kāi)發(fā)和編譯環(huán)境為Visual C++ 6.0與Matcom 4.5.1;第8章“VC++調(diào)用Matlab C++數(shù)學(xué)庫(kù)”的開(kāi)發(fā)和編譯環(huán)境為Visual C++ 6.0與 Matlab 6.5.1;其他各章的開(kāi)發(fā)和編譯環(huán)境為Visual C++ 6.0與Matlab 2007。
在本書(shū)的編寫(xiě)過(guò)程中有幸得到很多同志的支持和幫助,在此感謝所有為本書(shū)的完成提供過(guò)幫助的同事和朋友。感謝網(wǎng)絡(luò)上提供Matlab與C/C++混合程序設(shè)計(jì)資料的網(wǎng)友們,在學(xué)習(xí)Matlab與C/C++混合程序設(shè)計(jì)的過(guò)程中,這些資料使我受益匪淺。感謝我的妻子齊春溪女士,在她的大力支持和協(xié)助之下此書(shū)方得以順利編寫(xiě)完成。
目錄
第1章 Matlab程序設(shè)計(jì)初步1
1.1 Matlab程序設(shè)計(jì)特點(diǎn)1
1.1.1 Matlab Script文件1
1.1.2 Matlab表達(dá)式2
1.1.3 Matlab函數(shù)4
1.1.4 Matlab的向量運(yùn)算6
1.1.5 Matlab的程序控制9
1.2 Matlab常用的數(shù)據(jù)類(lèi)型12
1.2.1 數(shù)值陣列13
1.2.2 字符陣列15
1.2.3 元組陣列16
1.2.4 結(jié)構(gòu)體陣列18
第2章 Matlab編譯器21
2.1 Matlab編譯器技術(shù)概述21
2.2 Matlab編譯器的功能22
2.3 使用Matlab編譯器的準(zhǔn)備工作23
2.4 mcc編譯器典型應(yīng)用24
2.4.1 獨(dú)立可執(zhí)行文件24
2.4.2 C動(dòng)態(tài)鏈接庫(kù)30
2.4.3 C++動(dòng)態(tài)鏈接庫(kù)32
2.4.4 C/C++動(dòng)態(tài)鏈接庫(kù)的不同之處33
2.5 進(jìn)一步了解mcc命令34
2.5.1 mcc常用命令選項(xiàng)34
2.5.2 捆綁命令文件(bundle file)35
2.6 Matlab編譯器高級(jí)應(yīng)用35
2.6.1 編譯script文件35
2.6.2 Matlab編譯器關(guān)聯(lián)分析失效的情況36
2.6.3 從C/C++中調(diào)用Matlab內(nèi)置函數(shù)(built?in function)38
2.6.4 可變參數(shù)傳遞(varargin,varargout)38
2.6.5 Matlab環(huán)境下執(zhí)行和MCR執(zhí)行的不同之處39
2.6.6 獲取CTF文件的目錄40
2.6.7 屏幕打印和錯(cuò)誤信息顯示函數(shù)41
2.7 Deployment Tool45
2.8 程序發(fā)布47
第3章 Matlab與C語(yǔ)言的接口48
3.1 Matlab C/C++編譯器的設(shè)置(mex)48
3.2 Matlab中調(diào)用C程序?MEX文件49
3.2.1 MEX文件介紹49
3.2.2 MEX文件結(jié)構(gòu)說(shuō)明50
3.3 編譯MEX文件51
3.4 Matlab中mxArray類(lèi)型的操作51
3.5 Matlab與C語(yǔ)言混合編程常用的數(shù)據(jù)類(lèi)型51
3.5.1 size_t類(lèi)型51
3.5.2 Matlab C語(yǔ)言接口數(shù)據(jù)類(lèi)型52
3.6 操作Matlab陣列mxArray的mx函數(shù)54
3.7 Matlab mex函數(shù)77
3.8 Matlab普通數(shù)值陣列的操作87
3.9 稀疏數(shù)組陣列(Sparse Array)89
3.10 Matlab元組92
3.11 Matlab結(jié)構(gòu)體陣列94
3.12 Matlab字符陣列97
3.13 Matlab mat API函數(shù)98
3.14 Matlab API函數(shù)操作的實(shí)例105
3.14.1 更改Matlab數(shù)值陣列的維數(shù)105
3.14.2 分析并顯示Matlab陣列的內(nèi)容108
3.14.3 向MAT文件中寫(xiě)入mxArray變量118
3.14.4 從MAT文件中讀取mxArray變量121
3.14.5 通訊錄(結(jié)構(gòu)體和MAT文件)125
3.15 在Visual C++中調(diào)試MEX文件131
第4章 生成可獨(dú)立運(yùn)行的Matlab程序138
4.1 直接編譯M文件138
4.2 Matlab M文件中調(diào)用C函數(shù)138
4.3 在C語(yǔ)言中調(diào)用由Matlab?.m文件生成的函數(shù)141
4.4 利用Visual C++編譯M文件并去掉控制臺(tái)窗口145
第5章 Visual C++調(diào)用Matlab程序177
5.1 在Visual C++中調(diào)用Matlab引擎177
5.1.1 API函數(shù)介紹177
5.1.2 Visual C++調(diào)用Matlab引擎的實(shí)例178
5.2 Visual C++中調(diào)用Matlab?.m函數(shù)編譯后的動(dòng)態(tài)鏈接庫(kù)186
第6章 Matlab Dotnet Builder與Visual C++198
6.1 COM基礎(chǔ)知識(shí)198
6.1.1 COM組件概述198
6.1.2 COM組件開(kāi)發(fā)的基礎(chǔ)知識(shí)199
6.2 DotnetBuilder基礎(chǔ)知識(shí)204
6.2.1 配置Matlab C/C++編譯器204
6.2.2 使用Matlab DotnetBuilder204
6.3 Visual C調(diào)用DotnetBuilder生成的組件207
6.4 Matlab Dotnet Builder與Visual C++之間的數(shù)據(jù)轉(zhuǎn)換218
6.4.1 VARIANT數(shù)據(jù)類(lèi)型218
6.4.2 SAFEARRAY 數(shù)據(jù)類(lèi)型220
6.4.3 SAFEARRAY的創(chuàng)建函數(shù)221
6.4.4 Matlab Dotnet Builder與Visual C++數(shù)據(jù)轉(zhuǎn)換222
6.5 Matlab COM 工具庫(kù)227
6.5.1 簡(jiǎn)介227
6.5.2 工具庫(kù)的類(lèi)(utility library classes)227
6.5.3 Matlab Dotnet Builder的枚舉類(lèi)型233
6.5.4 安裝和發(fā)布控件234
6.6 綜合實(shí)例235
6.6.1 實(shí)例1數(shù)據(jù)轉(zhuǎn)換及數(shù)組格式標(biāo)志的使用235
6.6.2 實(shí)例2采用MWUtil處理varargin輸入和varargout輸出238
6.6.3 實(shí)例3MWStruct和MWField操作實(shí)例241
6.6.4 實(shí)例4MWComplex操作實(shí)例250
6.6.5 實(shí)例5MWSParse操作實(shí)例253
第7章 Matcom與C/C++257
7.1 安裝Matcom257
7.2 在VC++中使用Matcom C++矩陣庫(kù)259
7.3 使用Matcom C++矩陣庫(kù)的矩陣類(lèi)Mm264
7.3.1 創(chuàng)建數(shù)值矩陣264
7.3.2 創(chuàng)建字符矩陣265
7.3.3 利用下標(biāo)訪問(wèn)矩陣的元素265
7.3.4 獲取矩陣數(shù)據(jù)的指針266
7.3.5 Mm矩陣對(duì)象的初始化267
7.3.6 Mm矩陣類(lèi)的幾個(gè)常用函數(shù)267
7.3.7 Matcom C++矩陣庫(kù)常量269
7.3.8 調(diào)用系統(tǒng)函數(shù)270
7.4 Matcom C++矩陣庫(kù)的圖形和圖像顯示功能271
7.5 Matcom用于圖形顯示的常用函數(shù)273
7.6 Matcom進(jìn)行圖像顯示的常用函數(shù)273
7.7 Matcom的應(yīng)用實(shí)例274
7.7.1 實(shí)例1Mm矩陣的創(chuàng)建及使用274
7.7.2 實(shí)例2圖形繪制的基本功能演示278
7.7.3 實(shí)例3利用Matcom繪制動(dòng)態(tài)曲線282
7.7.4 實(shí)例4利用Matcom C++矩陣庫(kù)進(jìn)行圖像顯示293
7.7.5 實(shí)例5Matcom二維和三維曲線繪制綜合應(yīng)用303
第8章 Visual C++調(diào)用Matlab C++數(shù)學(xué)庫(kù)316
8.1 Matlab C++ 數(shù)學(xué)庫(kù)介紹316
8.2 在Visual C++工程中調(diào)用Matlab C++數(shù)學(xué)庫(kù)316
8.3 Matlab C++數(shù)學(xué)庫(kù)的使用318
8.3.1 輸入和輸出矩陣318
8.3.2 操作Matlab mwArray陣列322
8.3.3 調(diào)用系統(tǒng)函數(shù)341
附錄 動(dòng)態(tài)鏈接庫(kù)基礎(chǔ)知識(shí)344
A.1 為什么使用動(dòng)態(tài)鏈接庫(kù)?344
A.2 C/C++語(yǔ)言實(shí)現(xiàn)動(dòng)態(tài)鏈接庫(kù)345
A.3 C/C++語(yǔ)言動(dòng)態(tài)鏈接庫(kù)的不同348
A.4 動(dòng)態(tài)鏈接庫(kù)的調(diào)用方式348
A.4.1 隱式鏈接348
A.4.2 顯式鏈接350
下載地址
人氣書(shū)籍
![Objective-C基礎(chǔ)教程 中文 PDF 清晰版 [31M] Objective-C基礎(chǔ)教程 中文 PDF 清晰版 [31M]](http://img.jbzj.com/do/uploads/litimg/120917/153R51Ba5.jpg)
Objective-C基礎(chǔ)教程 中文 PDF 清晰版 [31M]
C程序設(shè)計(jì)(第四版)+學(xué)習(xí)輔導(dǎo) pdf版打包 譚浩強(qiáng)主編
C++ Primer Plus (第五版) 中文PDF清晰掃描版(57M)![Linux C編程實(shí)戰(zhàn) 中文 PDF版 [65.2M] Linux C編程實(shí)戰(zhàn) 中文 PDF版 [65.2M]](http://img.jbzj.com/do/uploads/litimg/120907/153554161205.jpg)
Linux C編程實(shí)戰(zhàn) 中文 PDF版 [65.2M]![數(shù)據(jù)結(jié)構(gòu)(C語(yǔ)言版) 第2版 (嚴(yán)蔚敏等) 高清pdf完整版[38MB] 數(shù)據(jù)結(jié)構(gòu)(C語(yǔ)言版) 第2版 (嚴(yán)蔚敏等) 高清pdf完整版[38MB]](http://img.jbzj.com/do/uploads/litimg/190828/1J3302J0H.jpg)
數(shù)據(jù)結(jié)構(gòu)(C語(yǔ)言版) 第2版 (嚴(yán)蔚敏等) 高清pdf完整版[38MB]
數(shù)據(jù)結(jié)構(gòu)基礎(chǔ)(C語(yǔ)言版)(第2版)中文 PDF清晰版(35.4M)
Lua程序設(shè)計(jì) Programming in Lua 中文 PDF 高清版
數(shù)據(jù)結(jié)構(gòu)C語(yǔ)言版(嚴(yán)蔚敏) 高清版 PDF格式
C語(yǔ)言經(jīng)典編程282例 (明日科技) 高清PDF掃描版 161M
C++ GUI Qt 4編程(第二版) PDF掃描版
下載聲明
☉ 解壓密碼:www.dhdzp.com 就是本站主域名,希望大家看清楚,[ 分享碼的獲取方法 ]可以參考這篇文章
☉ 推薦使用 [ 迅雷 ] 下載,使用 [ WinRAR v5 ] 以上版本解壓本站軟件。
☉ 如果這個(gè)軟件總是不能下載的請(qǐng)?jiān)谠u(píng)論中留言,我們會(huì)盡快修復(fù),謝謝!
☉ 下載本站資源,如果服務(wù)器暫不能下載請(qǐng)過(guò)一段時(shí)間重試!或者多試試幾個(gè)下載地址
☉ 如果遇到什么問(wèn)題,請(qǐng)?jiān)u論留言,我們定會(huì)解決問(wèn)題,謝謝大家支持!
☉ 本站提供的一些商業(yè)軟件是供學(xué)習(xí)研究之用,如用于商業(yè)用途,請(qǐng)購(gòu)買(mǎi)正版。
☉ 本站提供的精通Matlab與C/C++混合程序設(shè)計(jì)(第2版) pdf版資源來(lái)源互聯(lián)網(wǎng),版權(quán)歸該下載資源的合法擁有者所有。


