主要内容

mexFunction (Fortran)

Fortran MEX 函数的入口点

Fortran 语法

#include "fintrf.h"
subroutine mexFunction(nlhs, plhs, nrhs, prhs)
integer nlhs, nrhs
mwPointer plhs(*), prhs(*)

参量

nlhs

预期的输出 mxArray 的数量

plhs

指向预期的输出 mxArray 的指针数组

nrhs

输入 mxArray 的数目

prhs

指向输入 mxArray 的指针的数组。不要在 MEX 文件中修改任何 prhs 值。更改这些只读 mxArray 中的数据可能会产生不良副作用。

描述

mexFunction 不是您调用的例程。相反,mexFunction 是每个 MEX 函数所需的 Fortran 中入口子例程的名称。有关详细信息,请参阅Components of Fortran MEX File。当您调用 MEX 函数时,MATLAB® 会查找并加载同名的对应 MEX 函数。然后,MATLAB 在 MEX 函数中搜索名为 mexFunction 的符号。如果找到一个这样的符号,则它使用 mexFunction 符号的地址调用 MEX 函数。如果 MATLAB 在 MEX 函数中无法找到名为 mexFunction 的例程,则显示错误消息。

当您调用 MEX 函数时,MATLAB 会自动使用调用参量植入 nlhsplhsnrhsprhs。在 MATLAB 语言的语法中,函数的一般形式为:

[a,b,c,...] = fun(d,e,f,...)

其中 ... 表示相同格式的更多项。a,b,c... 是左侧输出参量,d,e,f... 是右侧输入参量。参量 nlhsnrhs 分别包含左侧和右侧参量数目。prhs 是长度为 nrhsmxArray 指针数组。plhs 是长度为 nlhs 的数组,您的函数必须在其中为输出 mxArray 设置指针。

注意

即使 nlhs = 0,也可能返回输出值,这对应于在 ans 变量中返回结果。

示例

要打开示例,请输入:

edit([fullfile(matlabroot,"extern","examples","mex","filename")]);

其中,filename 为:

版本历史记录

在 R2006a 之前推出