目录 1
第1章 Matlab程序设计初步 1
1.1 Matlab程序设计特点 1
1.1.1 Matlab Script文件 1
1.1.2 Matlab表达式 2
1.1.3 Matlab函数 4
1.1.4 Matlab的向量运算 6
1.1.5 Matlab的程序控制 9
1.2 Matlab常用的数据类型 12
1.2.1 数值阵列 13
1.2.2 字符阵列 15
1.2.3 元组阵列 16
1.2.4 结构体阵列 18
第2章 Matlab与C语言的接口 21
2.1 Matlab C/C++编译器的设置 21
2.2 Matlab中调用C程序MEX文件 22
2.2.1 MEX文件介绍 22
2.2.2 MEX文件结构说明 23
2.3 Matlab中mxArray类型的操作 24
2.4 Matlab中mx API函数 25
2.5 Matlab中mex API函数 47
2.6 Matlab普通数值阵列的操作 57
2.7 Sparse(稀疏)数组阵列 58
2.8 Matlab元组阵列 61
2.9 Matlab结构体阵列 63
2.10 Matlab字符阵列 66
2.11 Matlab中mat API函数 67
2.12 Matlab API函数操作的综合实例 73
2.12.1 更改Matlab数值阵列的维数 73
2.12.2 分析并显示Matlab阵列的内容 77
2.12.3 向MAT文件中写入mxArray变量 85
2.12.4 从MAT文件中读取Matlab变量 88
2.12.5 通讯录(结构体和MAT文件) 91
2.13 在VC++中调试MEX文件 96
3.1 mcc命令 101
第3章 生成可独立运行的Matlab程序 101
3.2 Matlab编译独立可执行程序 102
3.2.1 直接编译M文件 102
3.2.2 Matlab M文件中调用C语言函数 106
3.2.3 在C语言中调用由Matlab的*.m文件生成的函数 108
3.2.4 利用VC++编译M文件,并去掉控制台窗口 112
第4章 在VC++中调用Matlab程序 145
4.1 在VC++中调用Matlab引擎 145
4.1.1 API函数介绍 145
4.1.2 VC++调用Matlab引擎的实例 146
4.2 VC++中调用编译后的Matlab *.m函数 153
4.2.1 VC++中调用Matlab *.m函数编译后的对应C函数 153
4.2.2 VC++中调用Matlab *.m函数编译后的动态链接库 156
5.1 安装Matcom 166
第5章 Matcom与C/C++ 166
5.2 在VC++中使用Matcom C++矩阵库 168
5.3 使用Matcom C++矩阵库的矩阵类Mm 173
5.3.1 创建数值矩阵 173
5.3.2 创建字符矩阵 174
5.3.3 利用下标访问矩阵的元素 174
5.3.4 获取矩阵数据的指针 175
5.3.5 Mm矩阵对象的初始化 176
5.3.6 Mm矩阵类的几个常用函数 176
5.3.7 Matcom C++矩阵库常量 178
5.3.8 调用系统函数 179
5.4 Matcom C++矩阵库的图形和图像显示功能 180
5.6 Matcom进行图像显示的常用函数 182
5.5 Matcom用于图形显示的常用函数 182
5.7 Matcom的应用实例 183
5.7.1 实例1——Mm矩阵的创建及使用 183
5.7.2 实例2——图形绘制的基本功能演示 187
5.7.3 实例3——利用Matcom绘制动态曲线 191
5.7.4 实例4——利用Matcom C++矩阵库进行图像显示 202
5.7.5 实例5——Matcom二维和三维曲线绘制综合应用 212
第6章 Matlab COM Builder与VC++ 225
6.1 COM基础知识 225
6.1.1 COM组件概述 225
6.1.2 COM组件开发的基础知识 226
6.2.2 使用Matlab COM Builder 231
6.2 Matlab COM Builder基础知识 231
6.2.1 配置Matlab C/C++编译器 231
6.3 VC++调用Matlab COM Builder生成的组件 234
6.4 Matlab COM Builder与VC++之间的数据转换 243
6.4.1 VARIANT数据类型 244
6.4.2 SAFEARRAY数据类型 246
6.4.3 SAFEARRAY的创建函数 247
6.4.4 Matlab COM Builder和VC++之间的数据转换 248
6.5 Matlab COM Builder工具库 252
6.5.1 简介 252
6.5.2 工具库的类(utility library classes) 253
6.6.1 实例1——数据转换和数组格式标志的使用 260
6.6 综合实例 260
6.5.3 安装和发布控件 260
6.6.2 实例2——采用MWUtil处理varargin输入/varargout输出 262
6.6.3 实例3——MWStruct和MWField操作实例 265
6.6.4 实例4——MWComplex操作实例 273
6.6.5 实例5——MWSparse操作稀疏矩阵实例 276
第7章 VC++调用Matlab C++数学库 278
7.1 Matlab C++数学库介绍 278
7.2 在VC++工程中调用Matlab C++数学库 278
7.3 Matlab C++数学库的使用 280
7.3.1 输入和输出矩阵 280
7.3.2 操作Matlab mwArray阵列 284
7.3.3 调用系统函数 303