书籍详情

精通Matlab与C/C++混合程序设计

精通Matlab与C/C++混合程序设计

作者:刘维编著

出版社:北京航空航天大学出版社

出版时间:2005-06-01

ISBN:9787810776264

定价:¥36.00

购买这本书可以去
内容简介
  本书主要介绍如何运用Matlab与C/C进行混合程序设计。本书全面详细介绍了MatlabC数学库、MatlabC数学库、Matcom、MatlabCOMBuilder、MatlabEngine及编译Matlab独立可执行程序等Matlab混合程序设计的内容。本书共分为7章,主要内容包括:Matlab编程的基础知识、MatlabC语言接口、如何生成可独立运行的Matlab程序、在VisualC中调用Matlab程序、Matcom、MatlabCOMBuilder与VisualC混编程以及在VisualC中调用MatlabC数学库。本书各章都包含大量的实例程序,可供寻求将Matlab程序脱离Matlab环境的Matlab程序设计人员、寻求高效算法库的C/C开发人员学习和参考。本书采用的开发和运行环境为:VisualC6.0与Matlab6.5。[前言]最早接触Matlab是在大学期间参加“大学生数学建模竞赛”的时候,那时候惟一的感觉就是“相见恨晚”。接着在读研究生做课题的时候,开始使用Matcom编译Matlab程序以期获得更快的处理速度,使用Matcom的C矩阵库以期在享受高效率矩阵运算库的同时,实现和VisualC6.0开发环境的无缝连接。后来,MathWorks公司将Matcom收购并将其功能整合到Matlab中。直到Matlab6.5的推出,Matlab与C/C混合编程增加了MatlabC语言接口、MatlabC数学库、MatlabCOMBuilder和Matcom等诸多内容,由此Matlab与C/C进行混合程序设计的方法也派生出诸多“门派”。MatlabC语言接口即Matlab提供的一组C语言API函数以供用户调用。这组C语言API函数是Matlab和用户C代码之间的桥梁。用户可以在Matlab的MEX文件中调用C语言API函数,也可以在纯C/C开发环境中调用C语言API函数。MatlabC数学库是Matlab提供的一组封装好的矩阵运算数学库,其使用方法和Matlab环境中的编写方法非常相似,如果用户用VC(为了书写方便,书中出现的VC是VisualC的简写)实现用户界面,而又希望寻找一组高效的矩阵运算数学库的话,MatlabC数学库是一个不错的选择。MatlabCOMBuilder可以将Matlab的用*.m文件表达的函数编译为COM组件。这也是MathWorks公司推荐的一种进行Matlab混合编程的方法。很多用Matlab编译器编译有错误的文件用MatlabCOMBuilder却能很好地解决。只是具体操作起来,在VC中调用COM组件比调用C数学库和C语言API函数略微复杂。Matcom是第一个可以将Matlab的*.m文件编译为C/C代码的工具。现在,MathWorks公司已经将其集成到Matlab中,没有必要再使用Matcom来编译*.m文件了。但是Matcom的C矩阵库仍然有使用的价值,相对于MatlabC数学库来说,其使用起来更为简单和方便。可以看出,上述各种Matlab与C/C混合程序设计的方法各有千秋,具体使用时还要结合开发者的具体情况。但无论使用哪种方法,Matlab的数据结构与C/C的数据结构之间的相互访问和转换都是关键,这也是本书的重点所在,希望读者在读本书的过程中注意。本书的所有源代码都可以在附带的光盘中找到。另外,为了与书中程序对应及保证全文体例上的统一,本书中的符号全部采用正体书写。由于作者的水平有限,如果读者对本书的内容有疑问或者发现书中有错误的地方,请发送邮件到matlab_vc_program@yahoo.com.cn与作者讨论或批评指正,谢谢!在本书的编写过程中得到了很多同志的支持与帮助。特别感谢李璐、李群、路瑞强、伍炜、周志勇、王国房六位同志,由于本书涉及VisualC6.0与Matlab程序设计的诸多方面,很多关键问题都是在与六位同志的讨论中解决的。不仅如此,他们还为本书提供了很多的宝贵资料。感谢齐春溪女士不辞辛劳地完成了本书所有章节的初步排版工作,并且找出了本书初稿中的诸多错误。最后感谢所有对本书的完成提供过帮助的人们,没有他们的帮助和付出,本书也不可能完成。
作者简介
  斯蒂斯·J·鲍尔是伦敦国王学院“教育研究中心”的社会学教授。曾供职于苏塞克斯大学。他撰有多部著作,包括《比彻赛德综合综合学校》,《学校微观政治学》《政治学与教育决策》,与理查德·鲍合著《教育改革与学校变革》。最近他致力于研究教育领域的市场力量和患癌症儿童家庭状况。
目录
第1章  Matlab 程序设计初步  
1.1  Matlab程序设计特点
1.1.1  Matlab Script文件
1.1.2  Matlab表达式
1.1.3  Matlab函数
1.1.4  Matlab的向量运算
1.1.5  Matlab的程序控制
1.2  Matlab常用的数据类型
1.2.1 数值阵列
1.2.2 字符阵列
1.2.3 元组阵列
1.2.4 结构体阵列
第2章    Matlab与C语言的接口
2.1 Matlab C/C++编译器的设置
2.2 Matlab 中调用C程序MEX文件
2.2.1 MEX文件介绍
2.2.2 MEX文件结构说明
2.3  Matlab 中mx Array类型的操作
2.4  Matlab 中mx API函数
2.5  Matlab 中mex API函数
2.6  Matlab 普通数值阵列的操作
2.7 Sparse数组阵列
2.8 Matlab元组阵列
2.9 Matlab结构体阵列
2.10 Matlab字符阵列
2.11 Matlab中mat API函数
2.12 Matlab API函数操作的综合实例
2.12.1 更改Matlab数值阵列的维数
2.12.2 分析并显示Matlab阵列的内容
2.12.3 向MAT 文件中写入mxArray变量
2.12.4 从MAT文件中读取Matlab变量
2.12.5 通讯录
2.13 在VC++中调试MEX文件
第3章  生成可独立运行的Matlab程序
3.1 mcc命令
3.2 Matlab编译独立可执行程序
3.2.1 直接编译M文件
3.2.2 Matlab M文件中调用C语言函数
3.2.3 在C语言中调用由Matlab的*.m文件生成的函数
3.2.4 利用VC++编译M文件,并去掉控制台窗口
第4章  在VC++中调用Matlab程序
4.1 在VC++中调用Matlab引擎
4.1.1 API函数介绍
4.1.2 VC++中调用Matlab引擎实例
4.2 VC++中调用编译后的Matlab *.m函数
4.2.1  VC++中调用Matlab *.m函数编译后的对应C函数
4.2.2  VC++中调用Matlab *.m函数编译后的动态连接库
第5章   Matcom与C/C++
5.1 安装Matcom
5.2 在VC++中使用Matcom C++矩阵库
5.3 使用Matcom C++矩阵库的矩阵类Mm
5.3.1 创建数值矩阵
5.3.2 创建字符矩阵
5.3.3 利用下标访问矩阵的元素
5.3.4 获取矩阵数据的指针
5.3.5 Mm 矩阵对象的初始化
5.3.6 Mm矩阵类的几个常用问题
5.3.7Matcom C++矩阵库常量
5.3.8 调用系统函数
5.4 Matcom C++矩阵库的图形和图象显示功能
5.5 Matcom用于图象显示的常用函数
5.6 Matcom进行图象显示的常用函数
5.7 Matcom的应用实例
5.7.1 实例1——Mm矩阵的创建及使用
5.7.2 实例2——图形绘制的基本功能演示
5.7.3 实例3——利用Matcom绘制动态曲线
5.7.4 实例4——利用Matcom C++矩阵库进行图象显示
5.7.5 实例5——Matcom二维和三维曲线绘制综合应用
第6章  Matlab COM Builder 与 VC++
6.1 COM 基础知识
6.1.1 COM 组件概述
6.1.2 COM 组件开发的基础知识
6.2  Matlab COM Builder 基础知识
6.2.1 配置Matlab C++编译器
6.2.2  Matlab COM Builder 
6.3  Matlab COM Builder 
6.4  Matlab COM Builder 与 VC++之间的数据交换
6.4.1 VARIANT数据类型
6.4.2 SAFEARRAY数据类型
6.4.3 SAFEARRAY的创建函数
6.4.4  Matlab COM Builder和VC++之间的数据交换 
6.5  Matlab COM Builder 工具库
6.5.1 简介
6.5.2 工具库的类
6.5.3 安装和发布控件
6.6 综合实例
6.6.1 实例1——数据转换和数组格式标志的使用
6.6.2 实例2——采用MWUtil处理varargin输入/varargout输出
6.6.3 实例3——MWStruct和MWField操作实例
6.6.4 实例4——MWComplex操作实例
6.6.5 实例5——MWSparse操作稀疏矩阵实例
第7章 VC++ 调用 Matlab C++数据库 
7.1 Matlab C++数据库简介
7.2 在 VC++ 工程中调用 Matlab C++数据库
7.3  Matlab C++数据库的应用
7.3.1 输入和输出矩阵
7.3.2 操作Matlab mwArray阵列
7.3.3调用系统函数
参考文献
猜您喜欢

读书导航