mexFunction (C)
使用 C Matrix API 编译的 C/C++ MEX 函数的入口函数
C 语法
#include "mex.h" void mexFunction(int nlhs, mxArray *plhs[], int nrhs, const mxArray *prhs[])
描述
注意
要使用现代 C++ 功能和 MATLAB Data API for C++ 编写 MEX 函数,请参阅编写可从 MATLAB(MEX 文件)调用的 C++ 函数。
mexFunction
不是您调用的例程。相反,mexFunction
是每个 MEX 函数所需的 C 语言入口函数的名称。当您调用 MEX 函数时,MATLAB® 会查找并加载同名的对应 MEX 函数。然后,MATLAB 在 MEX 函数中搜索名为 mexFunction
的符号。如果找到一个这样的符号,则它使用 mexFunction
符号的地址调用 MEX 函数。如果 MATLAB 在 MEX 函数中无法找到名为 mexFunction
的例程,则显示错误消息。
当您调用 MEX 函数时,MATLAB 会自动使用调用参量植入 nlhs
、plhs
、nrhs
和 prhs
。在 MATLAB 语言的语法中,函数的一般形式为:
[a,b,c,...] = fun(d,e,f,...)
其中 ...
表示相同格式的更多项。a,b,c...
是左侧输出参量,d,e,f...
是右侧输入参量。参量 nlhs
和 nrhs
分别包含左侧和右侧参量数目。prhs
是长度为 nrhs
的 mxArray
指针数组。plhs
是长度为 nlhs
的数组,您的函数必须在其中为输出 mxArray
设置指针。
注意
即使 nlhs = 0
,也可能返回输出值,这对应于在 ans
变量中返回结果。
要试验传递输入参量,请按照 MEX 函数源代码示例表中的说明编译 mexfunction.c
示例。
输入参数
示例
要打开示例,请输入:
edit([fullfile(matlabroot,"extern","examples","mex","filename")]);
其中,filename
为:
版本历史记录
在 R2006a 之前推出