mxSetInt32s (C)

Установите действительные элементы данных в mxINT32_CLASS массив

Синтаксис C

#include "matrix.h"
int mxSetInt32s(mxArray *pa, mxInt32 *dt);

Описание

Используйте mxSetInt32s установить mxInt32 данные в заданном массиве.

Весь mxCreate* функции выделяют пространство "кучи", чтобы содержать данные. Поэтому вы обычно не используете эту функцию, чтобы инициализировать элементы массива. Скорее вызовите функцию, чтобы заменить существующие значения на новые значения.

Эта функция не освобождает память выделенный для существующих данных. Чтобы освободить существующую память, вызовите mxFree на указателе, возвращенном mxGetInt32s.

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

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

Указатель на mxINT32_CLASS массив.

Указатель на первый mxInt32 элемент массива данных. dt должен быть выделен функциями mxCalloc или mxMalloc.

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

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

Функциональное состояние, возвращенное как int. Если успешный, то функция возвращает 1.

Если pa isNull, затем функция возвращает 0.

Функция неудачна когда mxArray не неразделенный mxINT32_CLASS массив, или если данные не выделяются с mxCalloc. Если функция неудачна, то:

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

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

Примеры

Обратитесь к arrayFillSetPr.c пример в matlabroot/extern/examples/refbook папка, которая копирует существующие данные в mxArray. Данные в примере заданы как mxDouble. Изменить этот пример для int32 данные:

  • Объявите переменные данных как mxInt32

  • Вызовите mxCreateNumericMatrix с числовым типом mxINT32_CLASS

  • Замените mxSetDoubles с mxSetInt32s помещать массив C в mxArray

Версия API

Эта функция доступна в чередованном комплексном API. Создавать myMexFile.c с помощью этой функции введите:

mex -R2018a myMexFile.c

Смотрите также

| |

Введенный в R2018a