Main Content

mxSetComplexInt32s (C)

mxINT32_CLASS 配列内に複素数データ要素を設定

C 構文

#include "matrix.h"
int mxSetComplexInt32s(mxArray *pa, mxComplexInt32 *dt);

説明

mxSetComplexInt32s を使用して、指定された配列内に mxComplexInt32 データを設定します。

mxCreate* のすべての関数が、データ保持のためにヒープ領域を割り当てます。そのため、通常は、この関数を使用して配列の要素を初期化することはありません。その代わりに、この関数を呼び出して既存の値を新しい値に置換します。

入力引数

すべて展開する

mxINT32_CLASS 配列へのポインター。

データ配列の最初の mxComplexInt32 要素へのポインター。dt は関数 mxCalloc または mxMalloc によって割り当てなければなりません。

出力引数

すべて展開する

関数のステータス。int として返されます。成功した場合、関数は 1 を返します。

paNULL の場合、関数は 0 を返します。

mxArray が非共有の mxINT32_CLASS 配列ではない場合や、データが mxCalloc によって割り当てられない場合は、関数は失敗します。関数が失敗した場合は、次のようになります。

  • MEX ファイル — 関数は MEX ファイルを終了し、制御を MATLAB® プロンプトに戻します。

  • スタンドアロン (非 MEX ファイル) アプリケーション — 関数は 0 を返します。

既存の複素数データを mxArray にコピーする、matlabroot/extern/examples/refbook フォルダーの arrayFillSetComplexPr.c の例を参照してください。例の中のデータは mxComplexDouble として定義されています。この例は、任意の複素数 C 数値型のパターンとして使用できます。複素数 int32 データ用にこの例を変更するには、次を行います。

  • データ変数を mxComplexInt32 として宣言する

  • 数値型 mxINT32_CLASS を指定して mxCreateNumericMatrix を呼び出す

  • mxSetDoublesmxSetComplexInt32s に置き換えて、C 配列を mxArray に配置する

API バージョン

この関数はインターリーブされた複素数 API で使用できます。この関数を使用して myMexFile.c をビルドするには、以下を入力します。

mex -R2018a myMexFile.c

バージョン履歴

R2018a で導入