|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
通过MEX文件可以在MATLAB中像调用内嵌函数一样调用现有的使用C语言和Fortran等语言编写的函数,实现了代码重用,同时也能解决MATLAB循环效率低的缺点,提高MATLAB环境中数据处理的效率。 A! M( Q( y( v0 o9 f" D
3 S1 ^" Y9 I& s8 X" a4 Y* N3 O
MEX文件的后缀名为 .mexw32, Z7 R- G! ^* M
& s! u' e; c; m/ ~: [' w# ~- d. K
MEX文件的编写和编译需要两个基本条件:一是必须按照MATLAB应用程序接口组件和相关工具,二是要有C语言或Fortran语言的编译器。- R( T( w. y& B- c0 ]' O
# s' v( I' M; `* |" N( U+ }/ A需要对MATLAB系统进行设置,使MATLAB系统知道使用系统的哪一个C语言编译器,以及其参数和路径。
2 Z- d$ N5 Y- l0 n7 h+ P# p+ B/ _. d: P+ D7 f5 p! Z
MEX文件系统设置:
6 M& {- V! L& |; D+ T# F: @1 a& h* \& o" Z$ t
>> mex –setup 按照提示进行,最后出现Done…系统配置完毕。
8 ]4 F5 p( ?6 k
+ G9 m/ q6 z4 W1 Z7 O$ KC语言MEX文件的建立
y! q- L. q" n2 R9 x* H
; c6 i& s, b3 P7 g- l4 l5 q4 V8 IC语言MEX文件的建立& ~- d- \, D' ^; G0 F
$ G9 I- ~! ~& g& C1. MEX文件的结构
- C9 f- T; N5 o5 R" j @8 S( @
, Z9 r) Z9 _; D2 j. W' u( b: Ua) 计算子程序
3 X$ K6 U& C9 q2 _; d- A! K0 r2 z% p/ y- R6 i5 l' E
b) 入口子程序,void mexFunction(int nlhs, mxArray *plhs[],int nrhs,const mxArray *prhs[]) { /*用户特定的代码….*/ }! Y+ w, R) J8 i- |* _- w
8 G( G, ~- ^* E* w+ W' \2. 创建timestwoalt.c) d- j( d6 x. W2 ]
- i" Y9 q4 } P1 Y# b- d3 W
w# B j; [' b" F, a
# b, r, R+ s" O; m- `
/ b- h- h+ x+ i5 {' u
& _" {+ o; a7 u/ M |
|