mcc函数实现matlab的m文件转化为c,c++文件

转载 2013年12月03日 11:44:38

 

http://polleter1.blog.163.com/blog/static/46846553200681884039519/

mcc函数实现matlab的m文件转化为c,c++文件。 

2006-09-18 08:40:39|  分类: matlab编程_c++编 |  标签: |字号 订阅

mcc函数实现matlab的m文件转化为c,c++文件。
命令的格式为:
mcc[-option]fun[fun2...][mexfile1...][mlifile...]
此函数的作用是将matlab程序fun.m转化为c程序fun.c或者c++程序fun.cpp
转化后的文件默认在当前目录中。
若M文件多于一个,那么每个文件对应转化相应的c和c++文件
若源文件包含c文件,则将它们同新生成的c文件一起编译。
一些有用的option参数解释如下:
————————————————————————————————————
c  转化为c语言文件但是不生成mex文件或者独立应用程序
d<directory>  指定生成的文件目录
G/g  进入调试状态
h  编译帮助函数,所以的m文件都将编译到mex文件或者独立应用程序
L《option》 指定目标语言为option,其中c,cpp,p分别代表c语言,c++,matlab语言
m  指定创建独立c语言应用程序的宏,作用等于‘-t-W main -L C-h-T link:exe libmmdile.mlib’
M"<string>"  向MBLID或者mex教本传递string中包含的信息
o<outputfilename>  指定输出文件名
O<optimization>  指定优化参数
p   指定创建独立c++语言应用程序的宏  作用等于-t-W main -L Cpp-h-T link:exe libmmdile.mlib’
v   详细显示编译步骤
x   指定创建独立mex文件的宏,作用等于-t-W main -L C-T link:exe libmmdile.mlib’
S   转化为simuink的s函数
————————————————————————————————————
————————————————————————————————————
eg
现有m文件main.m mrank.m,主函数main中调用了子函数mrank
main.m
function main
r=mrank(5)
mrank.m
function r=mrank(n)
r=zeros(n,1);
for k=1:n
r(k)=rank(magic(k));
end
在matlab环境下执行主程序可以看到结果
》》main
r=
1
2
3
3
5
现在要把他们转化为c和cpp程序
在matlab工作窗口中输入下面命令
》》mcc-mc main mrank
可以得到下面个文件:
main.c
main.h
main-main.c
mrank.c
mrank.h
在matlab中输入下面命令
mcc -lcpp main mrank
可以得到下面5个文件
main.cpp
main.hpp
main-main.cpp
mrank.cpp
mrank.hpp
有了这些程序以后,就可以在其他c,c++程序中方便调用了

、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、

创建独立可执行程序

方法1:编译m文件为可执行程序

mcc -m main mrank

or

mcc -p main mrank

方法2:将编译的c c++转化为可执行程序

mbuild main.c main_main.c mrank.c

or

mbuild main.cpp main_main.cpp mrank.cpp

 

相关文章推荐

mcc函数实现matlab的m文件转化为c,c++文件。

mcc函数实现matlab的m文件转化为c,c++文件。 命令的格式为: mcc[-option]fun[fun2...][mexfile1...][mlifile...] 此函数的作用...

Matlab2012Ra由M文件产生C代码

1.准备M文件 simpleProduct.m function c = simpleProduct(a,b) c=a*b; 2.在matlab工作界面输入coder,输入工程名称 simple...

C++和C语言函数相互调用

1 引言 C++语言的创建初衷是“a better C”,但是这并不意味着C++中类似C语言的全局变量和函数所采用的编译和连接方式与C语言完全相同。作为一种欲与C兼容的语言,C++保留了一部分过程式语...

C++文件读写操作

  • 2012年10月16日 10:16
  • 35KB
  • 下载

标准c++文件操作

在C++中,有一个stream这个类,所有的I/O都以这个“流”类为基础的,包括我们要认识的文件I/O,stream这个类有两个重要的运算符:  1、插入器( 向流输出数据。比如说系统有一个默...

oc与c++混编,抛弃.mm文件

写这片文章的起因是,有些朋友不想使用oc++的全部.mm文件的写法,固才有这种混编的转化的方法 前期准备: 1.首先建立一个新工程,编译,运行,ok 没问题,进入第2步 2.我建立...
  • owlwisp
  • owlwisp
  • 2013年04月24日 09:30
  • 1873

vs调试C++程序时提示 系统找不到指定文件

VS 2005在生成可执行文件时使用了一种新的技术,该技术生成的可执行文件会伴随生成一个清单文件(manifest file)(.manifest后缀文件)(其本质上是XML文档,你可以用文本编辑器打...

php+html5实现文件断点续传

早就听说过断点续传这种东西,前端也可以实现一下 断点续传在前端的实现主要依赖着HTML5的新特性,所以一般来说在老旧浏览器上支持度是不高的 本文通过断点续传的简单例子(前端文件提交+后端PHP文件...

使用MATLAB的MCC命令生成C/C 程序

使用MATLAB的MCC命令生成C/C++程序 首先,配置MATLAB 用如下命令: mex –setup mbuild -setup   例一...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:mcc函数实现matlab的m文件转化为c,c++文件
举报原因:
原因补充:

(最多只允许输入30个字)