mxCreateNumericArray (C)

Числовой массив N-D

Синтаксис C

#include "matrix.h"
mxArray *mxCreateNumericArray(mwSize ndim, const mwSize *dims,
    mxClassID classid, mxComplexity ComplexFlag);

Описание

Использование mxCreateNumericArray создать N-мерный mxArray. Элементам данных задал тип числовых данных classid.

mxCreateNumericArray отличается от mxCreateDoubleMatrix можно следующим образом:

  • Все элементы данных в mxCreateDoubleMatrix двойная точность, числа с плавающей запятой. Элементы данных в mxCreateNumericArray может быть любой числовой тип, включая различную целочисленную точность.

  • mxCreateDoubleMatrix создает двумерные массивы только. mxCreateNumericArray может создать массивы двух или больше размерностей.

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

Эта таблица показывает classid C значения, которые эквивалентны классам MATLAB.

Имя класса MATLAB

C classid Значение

int8

mxINT8_CLASS

uint8

mxUINT8_CLASS

int16

mxINT16_CLASS

uint16

mxUINT16_CLASS

int32

mxINT32_CLASS

uint32

mxUINT32_CLASS

int64

mxINT64_CLASS

uint64

mxUINT64_CLASS

single

mxSINGLE_CLASS

double

mxDOUBLE_CLASS

Вызвать mxDestroyArray когда вы закончили использовать mxArray. mxDestroyArray функция освобождает mxArray и его связанные действительные и мнимые элементы.

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

развернуть все

Количество размерностей в виде mwSize. Если ndim меньше 2, затем mxCreateNumericArray определяет номер размерностей к 2.

Массив размерностей в виде const mwSize *.

Каждый элемент в массиве размерностей содержит размер массива в той размерности. Например, чтобы создать 5- 7 массив, набор dims[0] к 5 и dims[1] к 7.

Обычно, dims массив содержит ndim элементы.

Идентификатор класса в виде mxClassID перечисление. classid определяет, как числовые данные представлены в памяти. Например, mxCreateNumericMatrix хранилища mxINT16_CLASS значения как 16-битные целые числа со знаком.

Индикатор комплексного массива в виде mxComplexity значение.

Для приложений, созданных с mex -R2018a команда, функция инициализирует каждый элемент данных к 0.

Для всех другой mex специфичные для релиза опции сборки, функция устанавливает каждый элемент в pr массив. Если ComplexFlag mxCOMPLEX, затем функция устанавливает pi массив к 0.

Выходные аргументы

развернуть все

Указатель на mxArray из типа classidВ виде mxArray *.

Функция неудачна, когда существует недостаточно свободного пространства "кучи", чтобы создать mxArray.

  • Файл MEX — Функция отключает файл MEX и возвращает управление в подсказку MATLAB.

  • Автономный (нефайл MEX) приложение — Функция возвращает NULL.

Примеры

Смотрите эти примеры в matlabroot/extern/examples/refbook:

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

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