Hello, is there a way to create mxArray from double *?

4 vues (au cours des 30 derniers jours)
Alexmyak
Alexmyak le 15 Nov 2012
Hello, is there a way to create mxArray from double *?

Réponse acceptée

José-Luis
José-Luis le 15 Nov 2012
Modifié(e) : José-Luis le 15 Nov 2012
If by create you mean typecasting, then no. If by create you mean populate then yes:
mwSize m = 100, n = 10; //Array size
double * yourData = new double[m*n]; //Need to populate with the data you want
mxArray *pa = mxCreateDoubleMatrix(m, n , mxREAL)
double *startPa = mxGetPr(pa);
//In C
memcpy ( startPa, yourData, m*n*sizeof(double) );
//Alternatively
copy ( pa, pa+(m*n), yourData );
delete yourData;

Plus de réponses (0)

Catégories

En savoir plus sur Call C++ from MATLAB dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by