将Matlab源程序转化为C_C_
第 10 卷第 3 期 哲里木畜牧学院学报 Vol. 10 No. 3
2000 年 9 月 Journal of Zheimu Animal Husbandry College Sep. 2000
将 Matlab 源程序转化为 C ,C + +
1 2 3
卢 宁 贾丕珠 马 睿
( 1 哲里木畜牧学院计算中心 通辽 028042 2 内蒙古师范大学成人教育部 呼和浩特 010000)
(3 兴安盟教育学院 乌兰浩特 137400)
摘 要 本文简要介绍了功能强大的数值计算软件 matlab 。叙述了如何将 matlab 的源文件转换
为 C ,C + + 再生成能单独运行的程序 , 以提高运行速度 。其中还介绍了从 matlab 源文件到 C + +
翻译软件 matcom 。以及如何在 Visual C + + 下实现 C + + 与 matcom 命令的混合编程 。
关键词 数值计算 ;matlab ;matcom ;C ;C + +
( )
中图分类号 TP31 文献标识码 A 文章编号 1008 - 5149 2000 03 - 0032 - 04
在当今数学类科技应用软件中 ,就软件数学处理的原始内核而言 ,可分为两类 ,一类是数
〔1 ,4〕
值计算型软件 ,如 matlab 、xmath 、gauss 等 。这类软件长于数值计算 ,对处理大批数据效率
高 。另一类是数学分析型软件 ,如 : mathematica 、maple 等 ,这类软件以符号计算见长 ,能给出
解析解和任意精度解 。
matlab 的出现 ,为各国科学家开发数学软件提供了新的基础 ,其主要应用有通用的数值计
算 ,算法设计 , 自动控制 ,数学信号处理 ,统计信号处理 ,神经网络 〔2 〕, 图形处理等 。
matlab 语言特点如下 :
简洁紧凑 ,使用方便灵活 。
库函数 、运算符丰富 。
matlab 既具有结构化的控制语句又有面向对象编程的特性 。
语法限制不严格 ,程序设计自由度大 。例如 ,在 matlab 里 ,用户无需对矩阵预定义就可使
用 。
程序的可移植性很好 ,基本上不做修改就可以在各种型号的计算机和操作系统上运行 。
matlab 的图形功能强大 。在 Fortran 和 C 语言里 ,绘图都很不容易 ,但在 matlab 里 ,数据
的可视化非常简单 。matlab 还具有较强的编辑图形界面的能力 。
功能强劲的工具箱是 matlab 的另一重要特色 。matlab 包含两个部分 :核心部分和各种可
选的工具箱 。
源程序的开放性 。除内部函数以外 ,所有 matlab 的核心文件和工具箱文件都是可读可改
的源文件 ,用户可通过对源文件的修改以及加入 自己的文件 ,构成新的工具箱 。
由于 matlab 强大的功能只能在它所提供的平台上才能使用 ,即必需在安装有 matlab 系统
( )
的机器上使用 m 文件 matlab 源文件 , 以行解释方式执行代码 ,与 BASIC 相同 ,这样 ,大大地
收稿 日期 :2000 —08 —29
卢宁 ,女 ,1962 年生 ,实验师 。
第 3 期 卢 宁等 :将 Matlab 源程序转化为 C ,C + +
33
限制了代码执行速度 ,给工程计算带来了很大不便 。于是人们开发出了 matlab 与其它高级语
言的接口程序 ,这样就可以把 matlab 的强大功能融入各种应用程序中 ,并且通过高级语言的