主要内容

mexFunction (C)

使用C Matrix API构建的C/ c++ MEX函数的入口点

C语法

#include "mex.h" void mexFunction(int nhs, mxArray *plhs[], int nrhs, const mxArray *prhs[])

描述

请注意

使用现代c++特性编写MEX函数MATLAB数据API,请参阅c++墨西哥人的应用程序

mexFunction不是例行公事。相反,mexFunction是C语言中每个MEX函数都需要的网关函数的名称。当你调用一个MEX函数时,MATLAB®查找并加载相应的同名MEX函数。MATLAB然后搜索一个名为mexFunction在MEX函数中。如果它找到一个,它就使用的地址调用MEX函数mexFunction的象征。如果无法找到一个名为的例程,MATLAB将显示一个错误消息mexFunction在MEX函数中。

当您调用一个MEX函数时,MATLAB自动播种nlhsplhsnrhs,prhs调用参数。在MATLAB语言的语法中,函数有一般形式:

[a, b, c,…] =乐趣(d, e, f,…)

在哪里...表示相同格式的更多项。的a, b, c…左边的输出参数是d, e, f……是右侧输入参数。的参数nlhsnrhs分别包含左侧和右侧参数的个数。prhs是一个数组mxArray指针的长度为nrhsplhs数组的长度是nlhs,其中函数必须为输出设置指针mxArray年代。

请注意

即使。也可以返回输出值nlhs = 0中返回的结果变量。

要尝试传递输入参数,请构建mexfunction.c示例,按照表的MEX函数源代码示例

输入参数

全部展开

预期的数量mxArray输出参数,指定为整数。

指向预期对象的指针数组mxArray输出参数。

输入数量mxArrays,指定为整数。

对象的指针数组mxArray输入参数。不要修改任何prhs值在您的MEX文件中。更改这些只读数据mxArrays会产生意想不到的副作用。

例子

参见matlabroot走读生/ /墨西哥人例子

之前介绍过的R2006a