Main Content

mxCalcSingleSubscript (Fortran)

最初の要素から目的の要素へのオフセット

Fortran 構文

#include "fintrf.h"
mwIndex mxCalcSingleSubscript(pm, nsubs, subs)
mwPointer pm
mwSize nsubs
mwIndex subs

説明

mxCalcSingleSubscript を呼び出して、mxArray の先頭とその mxArray の任意の要素との間にいくつの要素があるかを判断します。この関数は、添字を線形インデックスに変換します。

たとえば、(5,7) のような添字がある場合、mxCalcSingleSubscript は配列の最初の要素から (5,7) 要素までの距離を返します。mxArray データ型は、MATLAB® mxArray がいくつの次元をもっていても、1 次元配列ですべてのデータ要素を内部的に表します。内部表現の例については、データの保存を参照してください。

入力引数

すべて展開する

mxArray 配列へのポインター。mwPointer として指定します。

配列 subs の要素数。mwSize として指定します。通常、nsubs には pm が指し示す mxArray の次元数と同じ数を設定します。

添字の配列。mwIndex として指定します。配列内の各値は、次元の添字を指定します。subs(1) の値は行の添字を指定し、subs(2) の値は列の添字を指定します。添字には 1 ベースのインデックスを使用します。たとえば、subs 内の 2 次元の mxArray の開始要素を表現するには、subs(1)1 に設定し、subs(2)1 に設定します。

戻り値

mxArray の先頭と指定された添字の間の要素の数、つまり "インデックス"。この数値は線形インデックスで、添字と同等です。多くの行列ライブラリ ルーチン (mxGetField など) は、引数としてインデックスを必要とします。

subsmxArray の先頭の要素を記述している場合、mxCalcSingleSubscript は 0 を返します。subsmxArray の最後の要素を記述している場合、mxCalcSingleSubscriptN-1 を返します (ここで、N は要素の合計数)。

バージョン履歴

R2006a より前に導入