C MEX ファイルにおける 8 ビット、16 ビット、32 ビット、および 64 ビット データの処理
C 行列 API には、符号付きおよび符号なしの 8 ビット、16 ビット、32 ビット、および 64 ビットのデータをサポートする一連の関数が用意されています。たとえば、関数 mxCreateNumericArray
はデータが実装されていない N 次元の数値配列を、指定されたデータ サイズで作成します。詳細については、mxClassID
を参照してください。
指定されたデータ型の、データが実装されていない MATLAB® 配列を作成した後、mxGetInt8s
や mxGetComplexInt8s
などの型付きデータ アクセス関数を使用してそのデータにアクセスできます。MEX ファイル内で 8 ビット、16 ビット、32 ビットまたは 64 ビットの精度のデータについて演算を行います。MATLAB は、結果のデータ クラスを正しく認識します。
doubleelement.c
の例では 2
行 2
列の符号なし 16 ビット整数の行列を作成し、各要素を 2 倍して、両方の行列を MATLAB に返します。
この例をビルドするには、コマンド プロンプトで以下を入力します。
mex -R2017b doubleelement.c
例を呼び出します。
doubleelement
ans = 2 6 4 8
この関数の出力は 2
行 2
列の、符号なし 16 ビット整数が実装された行列です。
参考
mxCreateNumericArray
| mxClassID
| mxGetInt8s
| mxGetComplexInt8s