| 外部インタフェース/API リファレンス | ![]() |
C 言語表示
#include "matrix.h" int mxSetDimensions(mxArray *array_ptr, const int *dims, int ndims);
dims
dims[0]を5に、dims[1]を7に設定すると、5行7列のmxArrayを作成します。ほとんどの場合で、dims配列には、ndim個の要素が含まれます。
ndims
戻り値
成功した場合は0、失敗した場合は1を出力します。mxSetDimensionsは、入力のsize配列を保持するためにヒープ領域を割り当てます。そのため、次元数を増やすと、(まれに)システムのヒープ領域の不足が生じる可能性があります。
詳細
mxSetDimensionsを呼び出すことによって、既存のmxArrayの次元を変更しますmxSetDimensionsは、mxSetMおよびmxSetNと同じです。しかし、mxSetDimensionsは、2次元よりも大きいmxArrayの次元の変更により適しています。
mxSetDimensionsは、prまたはpi配列用に領域を割り当てまたは開放しません。その結果、mxSetDimensionsの呼び出しによってmxArray内の要素数が増加する場合は、それに従いpr (と存在すればpi)配列を大きくする必要があります。
mxSetDimensionsの呼び出しによってmxArray内の要素数が減少する場合は、オプションでprとpi配列のサイズを小さくすることができます。
例題
examplesディレクトリのmxサブディレクトリのmxsetdimensions.cを参照してください。
参考
mxGetNumberOfDimensions, mxSetM, mxSetN
| mxSetData | mxSetField | ![]() |