このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
mxSetDimensions (C)
次元数と各次元のサイズを変更
C 構文
#include "matrix.h" int mxSetDimensions(mxArray *pm, const mwSize *dims, mwSize ndim);
説明
mxSetDimensions
は、成功した場合に 0
、失敗した場合に 1
を返します。mxSetDimensions
は、入力サイズ配列を保持するためのヒープ領域を割り当てます。このため、次元数を増やすと、ヒープ領域が不足することがまれに考えられます。
mxSetDimensions
を呼び出して、既存の mxArray
の次元を変更します。mxSetDimensions
は mxSetM
や mxSetN
と似ていますが、mxSetDimensions
は 3 次元以上の mxArray
の次元の変更において、より細かい制御ができます。
mxSetDimensions
が配列 pr
や配列 pi
のスペースを割り当てたり、割り当て解除したりすることはありません。したがって、mxSetDimensions
の呼び出しによって mxArray
内の要素の数が増加する場合は、配列 pr
(および存在する場合は pi
) を適宜拡大してください。
mxSetDimensions
の呼び出しによって mxArray
内の要素数が減少する場合は、mxRealloc
を使用して配列 pr
と配列 pi
のサイズを任意に減らすことができます。
MATLAB® は、dims
引数に指定されている、後に続く大きさが 1 の次元を自動的に削除します。たとえば、ndim
が 5
で dims
が [4 1 7 1 1]
である場合、結果の配列には 4
x 1
x 7
の次元が含まれます。
入力引数
バージョン履歴
R2006a より前に導入