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

副标题:无

作   者:刘维编著

分类号:

ISBN:9787810776264

微信扫一扫,移动浏览光盘

简介

本书主要介绍如何运用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 开发人员学习和参考。 本书采用的开发和运行环境为:VisualC 6.0与Matlab6.5。 [前言]  最早接触Matlab是在大学期间参加“大学生数学建模竞赛”的时候,那时候惟一的感觉就是“相见恨晚”。接着在读研究生做课题的时候,开始使用Matcom编译Matlab程序以期获得更快的处理速度,使用Matcom的C 矩阵库以期在享受高效率矩阵运算库的同时,实现和VisualC 6.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与作者讨论或批评指正,谢谢!在本书的编写过程中得到了很多同志的支持与帮助。特别感谢李璐、李群、路瑞强、伍炜、周志勇、王国房六位同志,由于本书涉及VisualC 6.0与Matlab程序设计的诸多方面,很多关键问题都是在与六位同志的讨论中解决的。不仅如此,他们还为本书提供了很多的宝贵资料。感谢齐春溪女士不辞辛劳地完成了本书所有章节的初步排版工作,并且找出了本书初稿中的诸多错误。最后感谢所有对本书的完成提供过帮助的人们,没有他们的帮助和付出,本书也不可能完成。

目录

第1章 Matlab程序设计初步
1.1 Matlab程序设计特点
1.1.1 MatlabScript文件
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 MatlabC/C++编译器的设置
2.2 Matlab中调用C程序MEX文件
2.2.1 MEX文件介绍
2.2.2 MEX文件结构说明
2.3 Matlab中mxArray类型的操作
2.4 Matlab中mxAPI函数
2.5 Matlab中mexAPI函数
2.6 Matlab普通数值阵列的操作
2.7 Sparse(稀疏)数组阵列
2.8 Matlab元组阵列
2.9 Matlab结构体阵列
2.10 Matlab字符阵列
2.11 Matlab中matAPI函数
2.12 MatlabAPI函数操作的综合实例
2.12.1 更改Matlab数值阵列的维数
2.12.2 分析并显示Matlab阵列的内容
2.12.3 向MAT文件中写入mxArray变量
2.12.4 从MAT文件中读取Matlab变量
2.12.5 通讯录(结构体和MAT文件)
2.13 在VC++中调试MEX文件
第3章 生成可独立运行的Matlab程序
3.1 mcc命令
3.2 Matlab编译独立可执行程序
3.2.1 直接编译M 文件
3.2.2 MatlabM 文件中调用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.7 Matcom C++矩阵库常量
5.3.8 调用系统函数
5.4 Matcom C++矩阵库的图形和图像显示功能
5.5 Matcom 用于图形显示的常用函数
5.6 Matcom 进行图像显示的常用函数
5.7 Matcom 的应用实例
第6章 MatlabCOM Builder与VC ++
6.1 COM 基础知识
6.1.1 COM 组件概述
6.1.2 COM 组件开发的基础知识
6.2 MatlabCOM Builder基础知识
6.2.1 配置MatlabC/C++编译器
6.2.2 使用MatlabCOM Builder
6.3 VC++调用MatlabCOM Builder生成的组件
6.4 MatlabCOM Builder与VC++之间的数据转换
6.4.1 VARIANT数据类型
6.4.2 SAFEARRAY数据类型
6.4.3 SAFEARRAY的创建函数
6.4.4 MatlabCOM Builder和VC++之间的数据转换
6.5 MatlabCOM Builder工具库
6.5.1 简 介
6.5.2 工具库的类(utilitylibraryclasses)
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 ++调用MatlabC ++数学库
7.1 MatlabC++ 数学库介绍
7.2 在VC++工程中调用MatlabC++数学库
7.3 MatlabC++数学库的使用
7.3.1 输入和输出矩阵
7.3.2 操作MatlabmwArray阵列
7.3.3 调用系统函数
参考文献

已确认勘误

次印刷

页码 勘误内容 提交人 修订印次

精通Matlab与C/C++混合程序设计
    • 名称
    • 类型
    • 大小

    光盘服务联系方式: 020-38250260    客服QQ:4006604884

    意见反馈

    14:15

    关闭

    云图客服:

    尊敬的用户,您好!您有任何提议或者建议都可以在此提出来,我们会谦虚地接受任何意见。

    或者您是想咨询:

    用户发送的提问,这种方式就需要有位在线客服来回答用户的问题,这种 就属于对话式的,问题是这种提问是否需要用户登录才能提问

    Video Player
    ×
    Audio Player
    ×
    pdf Player
    ×
    Current View

    看过该图书的还喜欢

    some pictures

    解忧杂货店

    东野圭吾 (作者), 李盈春 (译者)

    亲爱的云图用户,
    光盘内的文件都可以直接点击浏览哦

    无需下载,在线查阅资料!

    loading icon