C-MEX file: I want to return an empty array, does anyone know how?
5 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Mayela
am 18 Aug. 2015
Beantwortet: Vincent Huber
am 2 Okt. 2020
If I assign plhs[0] = NULL; I get a warning in Matlab's command window and the output argument is not created/modified. Any attempt to create a matrix or an array with 0's dimensions causes Matlab to crash.
0 Kommentare
Akzeptierte Antwort
James Tursa
am 19 Aug. 2015
This will return an empty 0x0 matrix:
#include "mex.h"
void mexFunction(int nlhs, mxArray *plhs[], int nrhs, const mxArray *prhs[])
{
plhs[0] = mxCreateDoubleMatrix( 0, 0, mxREAL );
}
If you need something else please provide more detail about what you are trying to do.
Weitere Antworten (1)
Vincent Huber
am 2 Okt. 2020
In C++ if I call for
value = feval(mh,"myMexfunction",arg1,...)
with inside
outputs[0] = factory.createArray<double>({ 0,0 });
Matlab complains the following way:
Error using matlab.mex.MexHost/feval
Too many output arguments.
0 Kommentare
Siehe auch
Kategorien
Mehr zu Write C Functions Callable from MATLAB (MEX Files) finden Sie in Help Center und File Exchange
Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!