| 外部インタフェース/API リファレンス | ![]() |
Fortran MEX-ファイルのMATLABエントリポイント
Fortran 言語表示
subroutine mexFunction(nlhs, plhs, nrhs, prhs) integer*4 nlhs, nrhs, plhs(*), prhs(*)
plhs
nrhs
prhs
mexFunctionによって変更されません。
詳細
mexFunctionは、ユーザが呼び出すルーチンではありません。mexFunctionは、すべてのMEX-ファイル内でユーザが書かなければならないサブルーチン名です。MEX-ファイルを呼び出すとき、MATLABはMEX-ファイル内でmexFunctionという名前のサブルーチンを探します。見つかった場合、mexFunctionの最初の実行可能な行がMEX-ファイルの開始ポイントになります。MATLABが、MEX-ファイル内でmexFunctionという名前のサブルーチンを見つけられない場合は、MATLABはエラーメッセージを出力します。
MEX-ファイルを呼び出すとき、MATLABは呼び出し側の情報を使って、nlhs, plhs, nrhs, prhsを自動的にロードします。MATLAB言語のシンタックスでは、関数はつぎのような一般的な形式をもちます。
[a,b,c,...] = fun(d,e,f,...)
...は同じ書式の項目が続くことを意味します。a,b,c...は左辺引数で、d,e,f...は右辺引数です。引数nlhsとnrhsには、それぞれMEX-ファンクションを呼び出す左辺引数と右辺引数の数が含まれます。prhsは、長さがnrhsであるmxArrayのポインタの配列です。plhsは、長さがnlhsである配列のポインタです。ここで、ユーザ定義関数は、出力される左辺のmxArrayのポインタを設定しなければなりません。
| mexEvalString | mexGetEps | ![]() |