Main Content

このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。

mexPutVariable (C)

MEX 関数から指定されたワークスペースへの配列

C 構文

#include "mex.h"
int mexPutVariable(const char *workspace, const char *varname, 
  const mxArray *pm);

説明

メモ

最新の C++ の機能とMATLAB データ APIを使用して MEX 関数を作成するには、C++ MEX アプリケーションを参照してください。

mexPutVariable を呼び出して、ポインター pm にある mxArray を MEX 関数から指定のワークスペースにコピーします。MATLAB® によって、ワークスペースにコピーされた mxArrayvarname が割り当てられます。

mexPutVariable により、MATLAB、ユーザー定義関数、他の MEX 関数などの他のエンティティで配列にアクセスできるようになります。

指定されたワークスペースに同じ名前の変数が存在する場合、mexPutVariable は変数の以前の内容を新しい mxArray の内容で上書きします。たとえば、MATLAB ワークスペースが変数 Peaches を以下のように定義するとします。

Peaches
1     2     3     4

そして、mexPutVariable を呼び出して Peaches を同じワークスペースにコピーします。

mexPutVariable("base", "Peaches", pm)

mexPutVariable によって渡される値は Peaches の古い値を置換します。

入力引数

すべて展開する

コピーする配列のスコープ。const char* として指定します。使用可能な値は以下のとおりです。

base

mxArray をベース ワークスペースにコピーします。

caller

mxArray を呼び出し側ワークスペースにコピーします。

global

mxArray をグローバル変数のリストにコピーします。

ワークスペース内の mxArray の名前。const char* として指定します。

変数名には MATLAB 関数名を使用しないでください。関数名と競合する一般的な変数名には、ijmodecharsizepath などがあります。特定の名前が MATLAB 関数と関連しているかどうかを判断するには、関数 which を使用します。

mxArray へのポインター。

出力引数

すべて展開する

ステータス。成功した場合は 0 として返されます。失敗した場合は 1 が返されます。考えられる失敗の原因は、pmNULL になっていることです。

matlabroot/extern/examples/mex の次の例を参照してください。

R2006a より前に導入