mxGetScalar (C および Fortran)
配列内の最初のデータ要素の実数部
C 構文
#include "matrix.h" double mxGetScalar(const mxArray *pm);
Fortran 構文
#include "fintrf.h" real*8 mxGetScalar(pm) mwPointer pm
引数
pmmxArrayへのポインター。セルmxArray、構造体mxArray、または空のmxArrayは指定できません。
戻り値
mxArray の最初の実数 (非虚数) 要素の値。
C では、mxGetScalar は double を返します。mxArray 内の実数要素が double 以外の型である場合、mxGetScalar はスカラー値を double に自動的に変換します。スカラーの元のデータ表現を保持するには、戻り値を目的のデータ型にキャストします。
pm がスパース mxArray を指している場合、mxGetScalar は mxArray 内の最初の非ゼロ実数要素の値を返します。非ゼロ要素がない場合、関数は 0 を返します。
説明
mxGetScalar を呼び出して、mxArray の最初の実数 (非虚数) 要素の値を取得します。
通常、mxGetScalar は、pm が 1 つの要素のみを含む mxArray (スカラー) を指しているときに呼び出します。ただし、pm は多くの要素を含む mxArray を指すことができます。pm が複数の要素を含む mxArray を指している場合、関数は最初の実数要素の値を返します。たとえば、pm が 2 次元の mxArray を指している場合、mxGetScalar は (1,1) 要素の値を返します。pm が 3 次元の mxArray を指している場合、この関数は (1,1,1) 要素の値を返します (以下同様)。
mxGetScalar は、空ではない、数値型、logical 型、または char 型の mxArray のみに使用します。これらの条件をテストするには、mxIsEmpty、mxIsLogical、mxIsNumeric、mxIsChar などの行列ライブラリ関数を使用します。
mxGetScalar への入力値が int64 型または uint64 型の場合、値が flintmax より大きいと精度が低下する可能性があります。
例
例を開くには、次のように入力します。
edit([fullfile(matlabroot,"extern","examples","refbook","filename")]);
ここで filename は、次のようになります。
例を開くには、次のように入力します。
edit([fullfile(matlabroot,"extern","examples","mex","filename")]);
ここで filename は、次のようになります。
例を開くには、次のように入力します。
edit([fullfile(matlabroot,"extern","examples","mx","filename")]);
ここで filename は、次のようになります。