精通Matlab与C/C++混合程序设计(第2版)

作者:刘维编著
ISBN:10位[7811241781]13位[9787811241785]
出版社:北京航空航天大学出版社
出版日期:2008-1-1
定价:¥39.00元
内容提要本书主要介绍如何运用Matlab与C/C++进行混合程序设计。共分8章,主要包括:Matlab程序设计初步、Matlab编译器、Matlab与C语言的接口、生成可独立运行的Matlab程序、VisualC++调用Matlab程序、MatlabDotNetBuilder与VisualC++、Matcom与C/C++以及VisualC++调用MattabC++数学库。另外,附录中介绍有关动态链接库的基础知识。各章包含大量的实例程序,可供寻求将Matlab程序脱离Matlab环境的Matlab程序设计人员、寻求在Matlab中调用C/C++程序的程序设计人员、寻求在C/C++中调用Matlab程序的程序设计人员学习和参考。
本书附带一张光盘,其中包含各章实例程序的源代码。
目录第1章Matlab程序设计初步
1.1Matlab程序设计特点
1.1.1MatlabScript文件
1.1.2Matlab表达式
1.1.3Matlab函数
1.1.4Matlab的向量运算
1.1.5Matlab的程序控制
1.2Matlab常用的数据类型
1.2.1数值阵列
1.2.2字符阵列
1.2.3元组阵列
1.2.4结构体阵列
第2章Matlab编译器
2.1Matlab编译器技术概述
2.2Matlab编译器的功能
2.3使用Matlab编译器的准备工作
2.4mcc编译器典型应用
2.4.1独立可执行文件
2.4.2C动态链接库
2.4.3C++动态链接库
2.4.4C/C++动态链接库的不同之处
2.5进一步了解mcc命令
2.5.1mcc常用命令选项
2.5.2捆绑命令文件(bundlefile)
2.6Matlab编译器高级应用
2.6.1编译script文件
2.6.2Matlab编译器关联分析失效的情况
2.6.3从C/C++中调用Matlab内置函数(built-infunction)
2.6.4可变参数传递(varargin,varargotlt)
2.6.5Matlab环境下执行和MCR执行的不同之处
2.6.6获取CTF文件的目录
2.6.7屏幕打印和错误信息显示函数
2.7DeploymentTool
2.8程序发布
第3章Matlab与C语言的接口
3.1MatlabC/C++编译器的设置(mex)
3.2Matlab中调用C程序-MEX文件
3.2.1MEX文件介绍
3.2.2MEX文件结构说明
3.3编译MEX文件
3.4Matlab中mxArray类型的操作
3.5Matlab与C语言混合编程常用的数据类型
3.5.1size_t类型
3.5.2MatlabC语言接口数据类型
3.6操作Matlab阵列mxArray的mx函数
3.7Matlabmex函数
3.8Matlab普通数值阵列的操作
3.9稀疏数组阵列(SparseArray)
3.10Matlab元组
3.11Matlab结构体阵列
3.12Matlab字符阵列
3.13MatlabmatAPI函数
3.14MatlabAPI函数操作的实例
3.14.1更改Matlab数值阵列的维数
3.14.2分析并显示Matlab阵列的内容
3.14.3向MAT文件中写入mxArray变量
3.14.4从MAT文件中读取mxArray变量
3.14.5通讯录(结构体和MAT文件)
3.15在VisualC++中调试MEX文件
第4章生成可独立运行的Matlab程序
4.1直接编译M文件
4.2MatlabM文件中调用C函数
4.3在C语言中调用由Matlab*.m文件生成的函数
4.4利用VisualC++编译M文件并去掉控制台窗口
第5章VisualC++调用Matlab程序
5.1在VisualC++中调用Matlab引擎
5.1.1API函数介绍
5.1.2VisualC++调用Matlab引擎的实例
5.2visualC++中调用Matlab*.m函数编译后的动态链接库
第6章MatlabDotnetBuilder与VisualC++
6.1COM基础知识
6.1.1COM组件概述
6.1.2COM组件开发的基础知识
6.2DotnetBuilder基础知识
6.2.1配置MatlabC/C++编译器
6.2.2使用MatlabDotnetlBunder
6.3VisualC调用DotnetBuilder生成的组件
6.4MatlabDotnetBuilder与VisualC++之间的数据转换
6.4.1VARIANT数据类型
6.4.2SAFEARRAY数据类型
6.4.3SAFEARRAY的创建函数
6.4.4MatlabDotnetBuilder与VisualC++数据转换
6.5MatlabCOM工具库
6.5.1简介
6.5.2工具库的类(utmtylibraryclasses)
6.5.3.MatlabDotnetBuilder的枚举类型
6.5.4安装和发布控件
6.6综合实例
6.6.1实例1数据转换及数组格式标志的使用
6.6.2实例2采用MWUtil处理varargin输入和varargout输出
6.6.3实例3MWStruct和MWField操作实例
6.6.4实例4MWCompiex操作实例
6.6.5实例5MWSParse操作实例
第7章Matcom与C/C++
7.1安装Mattom
7.2在VC++中使用MatcomC++矩阵库
7.3使用MatcomC++矩阵库的矩阵类Mm
7.3.1创建数值矩阵
7.3.2创建字符矩阵
7.3.3利用下标访问矩阵的元素
7.3.4获取矩阵数据的指针
7.3.5Mm矩阵对象的初始化
7.3.6Mm矩阵类的几个常用函数
7.3.7MatcomC++矩阵库常量
7.3.8调用系统函数
7.4MatcomC++矩阵库的图形和图像显示功能
7.5Matcom用于图形显示的常用函数
7.6Matcorn进行图像显示的常用函数
7.7Matcorn的应用实例
7.7.1实例1Mm矩阵的创建及使用
7.7.2实例2图形绘制的基本功能演示
7.7.3实例3利用Matcom绘制动态曲线
7.7.4实例4利用MatcornC++矩阵库进行图像显示
7.7.5实例5Matcom二维和三维曲线绘制综合应用
第8章VisHalC++调用MatlabC++数学库
8.1MatlabC++数学库介绍
8.2在VisualC++工程中调用MatlabC++数学库
8.3MatlabC++数学库的使用
8.3.1输入和输出矩阵
8.3.2操作MatlabmwArray阵列
8.3.3调用系统函数
附录动态链接库基础知识
A.1为什么使用动态链接库?
A.2C/C++语言实现动态链接库
A.3C/C++语言动态链接库的不同
A.4动态链接库的调用方式
A.4.1隐式链接
A.4.2显式链接
参考文献