How to return a uint64_t from a mex function?

3 visualizzazioni (ultimi 30 giorni)
I want to assign to plhs[0] a scalar of type uint64_t.
Not sure what function to call.
e.g. if I have
uint64_t y=123;
and I want to return y to Matlab
I tried
plhs[0] = mxCreateDoubleScalar(y);
But this is not the right call as it is not a double. How to create a uint64_t variable in the mex function? in there another mxCreate...

Risposta accettata

Bruno Luong
Bruno Luong il 22 Nov 2021
mxArray *A;
A = mxCreateNumericMatrix(1, 1, mxUINT64_CLASS, mxREAL);
*(mxGetUint64s(A)) = 123;

Più risposte (0)

Categorie

Scopri di più su Write C Functions Callable from MATLAB (MEX Files) in Help Center e File Exchange

Prodotti


Release

R2019b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by