exponenta event banner

Создание массива ячеек 2-D в файле C MEX

В этом примере показано, как создать массив ячеек в функции MEX с помощью mxcreatecellmatrix.c , которая помещает входные аргументы в массив ячеек.

Анализ кода C

Чтобы увидеть код, откройте mxcreatecellmatrix.c в редакторе MATLAB ®.

Создайте массив ячеек для количества входных аргументов.

cell_array_ptr = mxCreateCellMatrix((mwSize)nrhs,1);

Скопируйте входные аргументы в массив ячеек.

for( i=0; i<(mwIndex)nrhs; i++){
    mxSetCell(cell_array_ptr,i,mxDuplicateArray(prhs[i]));

Пример сборки и тестирования

Выполните следующие команды из командной строки MATLAB.

Создайте пример.

mex -v mxcreatecellmatrix.c

Создание входных аргументов.

str1 = 'hello';
str2 = 'world';
num = 2012;

Создать 3- x-1 массив ячеек и вызов disp для отображения содержимого.

mxcreatecellmatrix(str1,str2,num)
The contents of the created cell is:

    'hello'
    'world'
    [2012]

Связанные темы