.Mex是什么格式的文件?如何打开?

.Mex是什么格式的文件?如何打开?,第1张

MEX文件是一种“可在matlab环境中调用的C(或fortran)语言衍生程序”。选自《精通Matlab65版》,第22章
“应用程序接口API”page531。
也就是说,MEX文件的
源码
文件是由C或Fortran语言编写的,后经matlab
编译器
处理而生成的二进制文件;它可以被matlab
解释器
自动装载并执行的
动态链接
程序,这种文件在windows下是ddl文件。
俺个人的理解:mex是matlab与C之间的桥梁。

mexw32是matlab中的M文件经过编译生成的mex文件,mex文件的后缀名按32位/64位分别为 mexw32/mexw64。

mex文件是由C或Fortran语言编写的源代码,经matlab编译器处理而生成的二进制文件。它是可以被matlab解释器自动装载并执行的动态链接程序,类似windows下的dll文件。

mex文件的编写

mex的编译结果实际上就是一个带输出函数mexFunction 的dll文件,所以写mex程序其实就是写一个DLL程序。编写mex程序的编辑器可以使用matlab的代码编辑器,也可使用自己的C++编辑器,如VS2008等。一般格式如下:

#include "mexh"

void mexFunction ( int nlhs, mxArray plhs[], int nrhs, const mxArray prhs[] )

{

}

四个参数分别用来输出和输入数据:

nlhs 输出参数个数,plhs 输出参数指针(nrhs和prhs是输入参数相关的)。

注意: 对输出和输入参数的 *** 作都是通过指针的方式进行的。

mex文件的编译

将m文件编译成mex文件,可以提高代码的运行速度,隐藏源代码,既能提高程序的执行速度,同时也能保护原作者的劳动成果不被窃取。

mex文件的调用

其调用方式与C语言中函数的调用方式是一样的,即:

返回值 = 函数名(参数列表);

判断能不能不是看你现在运行多少位的 *** 作系统,而是看你的CPU是不是支持64位运算。检查CPU的方法有很多,这里举一例:
打开运行框,输入cmd,回车;
在打开的窗口中输入systeminfo,回车;(注意!如果你的系统是ghost安装的,很可能没有这个命令!)
找到与CPU有关的信息,如果你找到了类似x86_64或者amd64的字样,说明你的CPU支持64位运算,可以使用64位 *** 作系统。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/13405276.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-07-29
下一篇 2023-07-29

发表评论

登录后才能评论

评论列表(0条)

保存