外部インタフェース/API リファレンス | ![]() ![]() |
C 言語表示
#include "matrix.h" mxArray *mxCreateNumericArray(int ndim, const int *dims, mxClassID class, mxComplexity ComplexFlag);
引数
ndim
次元数。ndims
に対して2よりも小さい値を指定した場合は、mxCreateNumericArray
は次元数を2に自動的に設定します。
dims
dims[0]
を5に、dims[1]
を7に設定すると、5行7列のmxArray
を作成します。ほとんどの場合で、dims
配列内にはndim
個の要素があります。
class
mxINT16_CLASS
と指定すると、mxArray
内の各数値データは16ビット符号付き整数として表されます。mxNUMERIC_CLASS
, mxSTRUCT_CLASS
, mxCELL_CLASS
, mxOBJECT_CLASS
以外の任意のクラスを指定することができます。
ComplexFlag
mxREAL
またはmxCOMPLEX
を指定。mxArray
内に設定しようとするデータに虚数要素が含まれない場合は、mxREAL
を指定します。データに虚数要素が含まれる場合は、mxCOMPLEX
を指定します。
戻り値
成功した場合は、作成したmxArray
のポインタ。スタンドアロン(非MEX-ファイル)アプリケーションで成功しない場合は、mxCreateNumericArray
はNULL
を出力します。MEX-ファイルで成功しない場合は、MEX-ファイルは終了し、制御がMATLABプロンプトに戻ります。 mxCreateNumericArray
は、mxArray
を作成するために十分なフリーなヒープ領域がないときには成功しません。
詳細
mxCreateNumericArray
を呼び出して、すべてのデータ要素がclass
で指定された数値データタイプをもつN次元のmxArray
を作成します。 mxArray
を作成した後で、mxCreateNumericArray
はすべての実数データ要素を0に初期化します。ComplexFlag
がmxCOMPLEX
と等しい場合は、mxCreateNumericArray
はすべての虚数データ要素も0に初期化します。mxCreateNumericArray
は、2つの重要な点がmxCreateDoubleMatrix
と異なります。
mxCreateDoubleMatrix
内のすべてのデータ要素は、倍精度浮動小数点数です。mxCreateNumericArray
内のデータ要素は、異なる整数精度を含む任意の数値タイプでかまいません。mxCreateDoubleMatrix
は、2次元配列のみを作成できます。mxCreateNumericArray
は、2次元以上の配列を作成できます。mxCreateNumericArray
は、作成したmxArray
を格納するためにダイナミックメモリを割り当てます。作成したmxArray
を終了するときに、メモリを開放するためにmxDestroyArray
を呼び出してください。
例題
examples
ディレクトリのrefbook
サブディレクトリのphonebook.c
とdoubleelement.c
を参照してください。さらにexamples
ディレクトリのmx
サブディレクトリのmxisfinite.c
を参照してください。
参考
mxClassID
, mxCreateDoubleMatrix
, mxCreateSparse
, mxCreateString
, mxComplexity
![]() | mxCreateFull (廃版) | mxCreateNumericMatrix | ![]() |