このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
C 行列 API
mxArray
型を使用する C プログラムを作成するR2017b 以前の MATLAB® と連携して動作する C プログラムを記述するには、C 行列 API の関数を使用します。これらの関数は、mxArray
データ構造体と連携して動作し、C MEX 関数または C エンジン アプリケーションのビルドに使用されます。
メモ
可能な限り C アプリケーションよりも C++ を選択します。
C 行列 API には 2 つのバージョンがあります。
"インターリーブされた複素数 API" には MATLAB R2018a 時点での C 行列 API の機能が含まれています。詳細については、MATLAB の MEX 関数におけるインターリーブされた複素数 API のサポートを参照してください。
"実数/虚数分離型の複素数 API" には、MATLAB R2017b 時点での C 行列 API の機能が含まれています。
これらのライブラリ関数の使用例は、以下を参照してください。
例については、個々の関数を参照してください (たとえば、
mxIsChar
など)。
注意
C 行列 API には、最新の C++ 機能をサポートするC++ 用の MATLAB データ APIとの互換性はありません。MATLAB (MEX ファイル) から呼び出せる C++ 関数の記述またはC++ からの MATLAB の呼び出しで説明するように、C 行列 API 関数は MATLAB API 内の関数と共に使用できません。
C データ型
mxArray | MATLAB 配列の C 型 |
mwSize | mxArray のサイズ値に用いる C の型 |
mwIndex | mxArray のインデックス値を表す C の型 |
mwSignedIndex | mxArray のサイズ値に用いる C の符号付き整数型 |
mxChar | string 配列の型 |
mxLogical | logical 配列の型 |
mxComplexity | 配列に虚数部があるかどうかを指定するフラグ |
mxArray の属性
mxIsNumeric | mxArray が数値であるかどうかを判別 |
mxIsComplex | データが複素数であるかどうかを判別 |
mxGetNumberOfDimensions | mxArray の次元数 |
mxGetElementSize | 各データ要素を格納するのに必要なバイト数 |
mxGetDimensions | 次元配列へのポインター |
mxSetDimensions | 次元数と各次元のサイズを変更 |
mxGetNumberOfElements | 数値 mxArray の要素数 |
mxCalcSingleSubscript | 最初の要素から目的の要素へのオフセット |
mxGetM | mxArray の行数 |
mxSetM | mxArray の行数を設定 |
mxGetN | mxArray の列数 |
mxSetN | mxArray の列数を設定 |
mxIsEmpty | mxArray が空かどうかを判別 |
mxIsFromGlobalWS | mxArray が MATLAB グローバル ワークスペースからコピーされたかどうかを判別 |
データ型の作成、クエリ、およびアクセス
mxArray の削除と複製
mxDestroyArray | 関数 MXCREATE* によって割り当てられた動的メモリを解放 |
mxDuplicateArray | 配列のディープ コピーを作成 |
mxArray の変換
データ メモリの管理
定数
mxIsInf | 入力が無限であるかどうかを判別 |
mxIsFinite | 入力が有限かどうかを判別 |
mxIsNaN | 入力が NaN (Not-a-Number) であるかどうかを判別 |
トピック
- C MEX ファイルでの文字列の受け渡し
この例では、C 行列 API でビルドされた MEX 関数に文字列を渡す方法を説明します。
- C MEX ファイルでのスカラー値の受け渡し
この例では、スカラー値を渡す MEX ファイルを作成する方法を説明します。
- C MEX ファイルでのスパース配列の処理
この例では、C 行列 API を使用してスパース行列に入力する方法を説明します。
- C MEX ファイルにおける 8 ビット、16 ビット、32 ビット、および 64 ビット データの処理
この例では、C 行列 API で符号なしの 16 ビット整数を MEX ファイルで使用する方法を説明します。
- C MEX ファイルでの構造体と cell 配列の受け渡し
この例では、C 行列 API でビルドされた MEX ファイルに構造体と cell 配列を渡す方法を説明します。
- C MEX ファイルでの多次元数値配列の操作
mxGetDoubles
とmxGetComplexDoubles
などの型付きデータ アクセス関数を使用して、多次元数値配列を操作できます。