C语言实现MATLAB 6.5中M文档的方法
2008-02-23 05:26:27来源:互联网 阅读 ()
关键词:MATLAB;M文档;C语言接口
众所周知,MATLAB是个功能强大的数学软件,擅长于用矩阵运算完成各种数学功能。但是其程式需要在MATLAB环境下解释执行,效率不高。假如能将他强大的函数库用于C语言,利用C来编译执行,MATLAB将能发挥更大的作用。所以,MATLAB从5.0开始已提供了和外部C/C 程式的应用程式接口,为利用C语言调用MATLAB的函数提供了可能。但是MATLAB的接口发展很快,到MATLAB 6.5已提供了对VC 7.0的支持,同时对C的接口相对于5.X版本有了一定的改变。
在MATLAB当中,我们利用M文档来实现函数,每一个M文档实现一个单独的功能,这一点和C语言当中的函数是相互对应的。所以,假如我们能将MATLAB中的M文档转化为C语言下的一个单个函数,就能实现MATLAB中相应的功能。
实现方法
整个过程可分为三个主要部分,用MATLAB将M文档翻译为C语言文档,从生成的C语言文档提取出有用语句,编写数据转换程式实现参数格式转换。整个过程最终将把M文档翻译成C语言当中的一个具备相同功能的函数,供其他的程式调用。
本文用一个最简单的M文档来示例:
文档名:messay.m
function c=messay() a=3.4; b=5.6; c=sqrt(a) sqrt(b); |
该m文档实现了计算
1、将M文档编译为C语言文档
为了将M文档翻译为C语言文档,需要进行一定的配置,这里假设编写C语言的环境为VC6.0,在MATLAB命令提示符下输入mex -setup和mbuild -setup命令,在相应选项中选择Microsoft Visual C/C 即可。
在MATLAB命令行中使用mcc命令将messay.m翻译为C代码。
mcc -m messay.m |
其中的参数-m代表mcc命令将把m文档翻译成C语言的代码。
翻译命令将在messay.m所在的文档夹下生成三个C语言文档:messay.h,messay.c和messay_main.c。其中messay_main.c提供了main()函数;messay.h提供了整个程式的函数声明;messay.c包含了MATLAB生成的功能函数。这三个文档当中,messay.c中包含了我们所需要的数学函数。
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
上一篇: 水滴石穿C语言之代码检查工具
下一篇: 利用C语言实现电脑图像处理的方法
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash