數(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語言深度進(jìn)階篇 v3 中文pdf完整版18.4MB / 01-22
零基礎(chǔ)入門C語言(全) 王桂林 中文pdf完整版4.7MB / 01-21
C語言程序設(shè)計(jì)第4版何欽銘 課后習(xí)題及答案+課件 中文pdf完整版4.7MB / 01-06
C++編程MFC基礎(chǔ)教程 中文完整版PDF28.3MB / 01-06
Qt5.10 GUI完全參考手冊 中文完整版PDF9.50MB / 12-16
C++標(biāo)準(zhǔn)庫參考(STL) 完整版PDF27.9MB / 11-05
C++編程學(xué)習(xí)與實(shí)踐案例 中文完整版PDF1.55MB / 09-24
-
-
-
C++基礎(chǔ)與提高(王桂林) 第四版 中文pdf完整版 C/C++ / 3.5MB
-
C語言深度進(jìn)階篇 v3 中文pdf完整版 C/C++ / 18.4MB
-
零基礎(chǔ)入門C語言(全) 王桂林 中文pdf完整版 C/C++ / 4.7MB
-
C語言程序設(shè)計(jì)第4版何欽銘 課后習(xí)題及答案+課件 中文pdf完整版 C/C++ / 4.7MB
-
C++編程MFC基礎(chǔ)教程 中文完整版PDF C/C++ / 28.3MB
-
Qt5.10 GUI完全參考手冊 中文完整版PDF C/C++ / 9.50MB
-
C++標(biāo)準(zhǔn)庫參考(STL) 完整版PDF C/C++ / 27.9MB
-
C++編程學(xué)習(xí)與實(shí)踐案例 中文完整版PDF C/C++ / 1.55MB
詳情介紹
Matlab程序在MCR環(huán)境下與在Matlab環(huán)境下執(zhí)行的效率相同,因此,通過編譯Matlab程序不會提高M(jìn)atlab程序的效率。
MCR的啟動時(shí)間與Matlab程序的啟動時(shí)間相同,在混合程序設(shè)計(jì)中應(yīng)考慮這一點(diǎn)。
在C/C++程序中無論采用哪種調(diào)用方式調(diào)用Matlab程序,最終結(jié)果都是由MCR執(zhí)行Matlab程序。
由于Matlab編譯器只生成Matlab接口文件,而MCR接口一般會采用兼容設(shè)計(jì),因此,與Matlab 6.5及以前版本的軟件相比,用戶開發(fā)C/C++混合程序設(shè)計(jì)的復(fù)雜度降低,可繼承性提高。
由于采用MCR執(zhí)行Matlab程序而不是將Matlab程序編譯為C/C++程序,Matlab函數(shù)和工具箱中可編譯的部分大大增加,為用戶開發(fā)混合編程提供了方便。
正是存在這些諸多不同,原有的C/C++與Matlab混合程序設(shè)計(jì)的具體實(shí)現(xiàn)方法需要進(jìn)行修正。為此,筆者對《精通Matlab與C/C++混合程序設(shè)計(jì)》第1版中的內(nèi)容進(jìn)行了相應(yīng)增刪或修正,形成了本書的內(nèi)容。
所謂“萬變不離其宗”,雖然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程序編譯后的動態(tài)鏈接庫以及C/C++程序調(diào)用Matlab程序編譯后的COM組件等方式進(jìn)行。
Matlab調(diào)用C/C++程序通過將其編譯為MEX文件來實(shí)現(xiàn),Matlab提供了一組C語言API函數(shù)供用戶調(diào)用。這組API函數(shù)是Matlab與用戶C程序之間的橋梁。通過調(diào)用C/C++程序編譯的MEX文件,用戶可以將Matlab程序中運(yùn)算效率不高的代碼用C/C++來實(shí)現(xiàn),從而提高計(jì)算效率。
C/C++調(diào)用Matlab程序用戶可以選擇調(diào)用Matlab程序編譯后的動態(tài)鏈接庫或Matlab程序編譯后的COM組件,這兩種調(diào)用方法的執(zhí)行效率是相同的。動態(tài)鏈接庫方式實(shí)現(xiàn)起來比較簡單,COM組件方式實(shí)現(xiàn)起來較復(fù)雜。除此之外,C/C++可以通過Matlab引擎直接執(zhí)行Matlab程序,但這種方式不能脫離Matlab環(huán)境執(zhí)行。
另外,書中還介紹了另外兩種Matlab與C/C++混合程序設(shè)計(jì)的方法:Matcom C/C++數(shù)學(xué)庫和Matlab C++數(shù)學(xué)庫。其中,Matcom是第一個(gè)可以將Matlab *.m文件編譯為C/C++代碼的編譯器。Matcom可以直接將m文件編譯為C/C++代碼,但只支持Matlab 5.3版。現(xiàn)在一般情況下沒有必要使用Matcom編譯Matlab程序,但Matcom的C++矩陣庫仍然有一定的使用價(jià)值。Matlab C++數(shù)學(xué)庫是Matlab提供的一組封裝好的矩陣運(yùn)算數(shù)學(xué)庫,其使用方法和Matlab環(huán)境中的編寫方法十分類似。如果用戶用Visual C++實(shí)現(xiàn)用戶界面,而又希望尋找一組高效的矩陣運(yùn)算數(shù)學(xué)庫的話,那么Matlab C++數(shù)學(xué)庫是一個(gè)不錯(cuò)的選擇。
Matlab與C/C++混合程序設(shè)計(jì)方法各有千秋,具體應(yīng)用還要結(jié)合開發(fā)者的具體情況進(jìn)行選擇。但無論使用哪種方法,Matlab的數(shù)據(jù)結(jié)構(gòu)與C /C++的數(shù)據(jù)結(jié)構(gòu)之間的相互訪問和轉(zhuǎn)換都是混合編程的關(guān)鍵,這也是本書重點(diǎn)所在,希望讀者在閱讀和開發(fā)過程中引起注意。
本書所有的源代碼均可在附帶的光盤中找到。第7章“Matcom與C/C++”的開發(fā)和編譯環(huán)境為Visual C++ 6.0與Matcom 4.5.1;第8章“VC++調(diào)用Matlab C++數(shù)學(xué)庫”的開發(fā)和編譯環(huán)境為Visual C++ 6.0與 Matlab 6.5.1;其他各章的開發(fā)和編譯環(huán)境為Visual C++ 6.0與Matlab 2007。
在本書的編寫過程中有幸得到很多同志的支持和幫助,在此感謝所有為本書的完成提供過幫助的同事和朋友。感謝網(wǎng)絡(luò)上提供Matlab與C/C++混合程序設(shè)計(jì)資料的網(wǎng)友們,在學(xué)習(xí)Matlab與C/C++混合程序設(shè)計(jì)的過程中,這些資料使我受益匪淺。感謝我的妻子齊春溪女士,在她的大力支持和協(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ù)類型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動態(tài)鏈接庫30
2.4.3 C++動態(tài)鏈接庫32
2.4.4 C/C++動態(tài)鏈接庫的不同之處33
2.5 進(jìn)一步了解mcc命令34
2.5.1 mcc常用命令選項(xiàng)34
2.5.2 捆綁命令文件(bundle file)35
2.6 Matlab編譯器高級應(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語言的接口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)說明50
3.3 編譯MEX文件51
3.4 Matlab中mxArray類型的操作51
3.5 Matlab與C語言混合編程常用的數(shù)據(jù)類型51
3.5.1 size_t類型51
3.5.2 Matlab C語言接口數(shù)據(jù)類型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文件中寫入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語言中調(diào)用由Matlab?.m文件生成的函數(shù)141
4.4 利用Visual C++編譯M文件并去掉控制臺窗口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ù)編譯后的動態(tài)鏈接庫186
第6章 Matlab Dotnet Builder與Visual C++198
6.1 COM基礎(chǔ)知識198
6.1.1 COM組件概述198
6.1.2 COM組件開發(fā)的基礎(chǔ)知識199
6.2 DotnetBuilder基礎(chǔ)知識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ù)類型218
6.4.2 SAFEARRAY 數(shù)據(jù)類型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 工具庫227
6.5.1 簡介227
6.5.2 工具庫的類(utility library classes)227
6.5.3 Matlab Dotnet Builder的枚舉類型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++矩陣庫259
7.3 使用Matcom C++矩陣庫的矩陣類Mm264
7.3.1 創(chuàng)建數(shù)值矩陣264
7.3.2 創(chuàng)建字符矩陣265
7.3.3 利用下標(biāo)訪問矩陣的元素265
7.3.4 獲取矩陣數(shù)據(jù)的指針266
7.3.5 Mm矩陣對象的初始化267
7.3.6 Mm矩陣類的幾個(gè)常用函數(shù)267
7.3.7 Matcom C++矩陣庫常量269
7.3.8 調(diào)用系統(tǒng)函數(shù)270
7.4 Matcom C++矩陣庫的圖形和圖像顯示功能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繪制動態(tài)曲線282
7.7.4 實(shí)例4利用Matcom C++矩陣庫進(jìn)行圖像顯示293
7.7.5 實(shí)例5Matcom二維和三維曲線繪制綜合應(yīng)用303
第8章 Visual C++調(diào)用Matlab C++數(shù)學(xué)庫316
8.1 Matlab C++ 數(shù)學(xué)庫介紹316
8.2 在Visual C++工程中調(diào)用Matlab C++數(shù)學(xué)庫316
8.3 Matlab C++數(shù)學(xué)庫的使用318
8.3.1 輸入和輸出矩陣318
8.3.2 操作Matlab mwArray陣列322
8.3.3 調(diào)用系統(tǒng)函數(shù)341
附錄 動態(tài)鏈接庫基礎(chǔ)知識344
A.1 為什么使用動態(tài)鏈接庫?344
A.2 C/C++語言實(shí)現(xiàn)動態(tài)鏈接庫345
A.3 C/C++語言動態(tài)鏈接庫的不同348
A.4 動態(tài)鏈接庫的調(diào)用方式348
A.4.1 隱式鏈接348
A.4.2 顯式鏈接350
下載地址
人氣書籍
![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語言版) 第2版 (嚴(yán)蔚敏等) 高清pdf完整版[38MB] 數(shù)據(jù)結(jié)構(gòu)(C語言版) 第2版 (嚴(yán)蔚敏等) 高清pdf完整版[38MB]](http://img.jbzj.com/do/uploads/litimg/190828/1J3302J0H.jpg)
數(shù)據(jù)結(jié)構(gòu)(C語言版) 第2版 (嚴(yán)蔚敏等) 高清pdf完整版[38MB]
數(shù)據(jù)結(jié)構(gòu)基礎(chǔ)(C語言版)(第2版)中文 PDF清晰版(35.4M)
Lua程序設(shè)計(jì) Programming in Lua 中文 PDF 高清版
數(shù)據(jù)結(jié)構(gòu)C語言版(嚴(yán)蔚敏) 高清版 PDF格式
C語言經(jīng)典編程282例 (明日科技) 高清PDF掃描版 161M
C++ GUI Qt 4編程(第二版) PDF掃描版
下載聲明
☉ 解壓密碼:www.dbjr.com.cn 就是本站主域名,希望大家看清楚,[ 分享碼的獲取方法 ]可以參考這篇文章
☉ 推薦使用 [ 迅雷 ] 下載,使用 [ WinRAR v5 ] 以上版本解壓本站軟件。
☉ 如果這個(gè)軟件總是不能下載的請?jiān)谠u論中留言,我們會盡快修復(fù),謝謝!
☉ 下載本站資源,如果服務(wù)器暫不能下載請過一段時(shí)間重試!或者多試試幾個(gè)下載地址
☉ 如果遇到什么問題,請?jiān)u論留言,我們定會解決問題,謝謝大家支持!
☉ 本站提供的一些商業(yè)軟件是供學(xué)習(xí)研究之用,如用于商業(yè)用途,請購買正版。
☉ 本站提供的精通Matlab與C/C++混合程序設(shè)計(jì)(第2版) pdf版資源來源互聯(lián)網(wǎng),版權(quán)歸該下載資源的合法擁有者所有。


