mxSetDimensions (Fortran)

Измените количество размерностей и размер каждой размерности

Синтаксис языка ФОРТРАН

#include "fintrf.h"
integer*4 mxSetDimensions(pm, dims, ndim)
mwPointer pm
mwSize ndim
mwSize dims(ndim)

Описание

mxSetDimensions возвращает 0 на успехе, и 1 при отказе. mxSetDimensions выделяет пространство в куче для хранения входного массива размеров. Таким образом, возможно (хотя и маловероятно), что увеличение количества размерностей может привести к тому, что в системе закончится пространство кучи.

Звонить mxSetDimensions для изменения формы существующего mxArray. mxSetDimensions Как mxSetM и mxSetN; однако, mxSetDimensions обеспечивает больший контроль для изменения формы mxArray который имеет более чем две размерности.

mxSetDimensions не выделяет и не освобождает ни одно пространство для pr или pi массивы. Итак, если ваш вызов на mxSetDimensions увеличивает количество элементов в mxArray, затем увеличьте prpi, если он существует) массивы соответственно.

Если ваш вызов на mxSetDimensions уменьшает количество элементов в mxArray, тогда вы можете опционально уменьшить размер pr и pi массивы, использующие mxRealloc.

MATLAB® автоматически удаляет все конечные синглтонные размерности, указанные в dims аргумент. Для примера, если ndim равен 5 и dims равен [4 1 7 1 1], тогда получившийся массив имеет размерности 4-by- 1-by- 7.

Входные параметры

расширить все

Указатель на mxArray массив, заданный как mwPointer.

Размерности. Каждый элемент массива размерностей содержит размер массива в этом измерении, заданный как mwSize. Для примера в Фортране установка dims(1) на 5 и dims(2) на 7 устанавливает 5-by- 7 mxArray. В большинстве случаев существуют ndim элементы в dims массив.

Количество размерностей, заданное как mwSize.

Примеры

См. эти примеры в matlabroot/ extern/examples/mx:

Представлено до R2006a