Я знаю, как написать базовую функцию C Mex с одним выходом типа double. Я пытался написать C Mex с двумя выходами, но я получил ошибки нарушения сегментации. Первый вывод - двойной, второй - целое число. Вот код, в котором я пытаюсь назначить выходные указатели:
plhs[0] = mxCreateDoubleMatrix(1, 1, mxREAL); //works fine
plhs[1] = mxCreateNumericArray(1, 1, mxINT32_CLASS, mxREAL); //causes segmentation violation
Я искал в Интернете, но почти во всех примерах есть только один выход или выходы одного типа. Что нужно сделать для получения двух выходных данных, одного типа double, другого типа integer?