Programación General => C/C++ => Mensaje iniciado por: fernandovallecordoba en Sábado 21 de Febrero de 2009, 02:03
Título: mexxFunction Matrices??
Publicado por: fernandovallecordoba en Sábado 21 de Febrero de 2009, 02:03
Hola, quisiera saber si alguien me podría echar una mano. Tengo un programa en matlab el cual tengo que pasar a C. La idea es que la funcion reciba una matriz (bidimensional de double) por parametro y trabaje con ella. Mi problema es que no se como hacer que la matriz que recibo en la mexFunction pueda luego usarla en otras funciones. Mi idea es poder hacer lo siguiente:
void mexFunction(int nlhs, mxArray *plhs[], int nrhs, const mxArray *prhs[]){
prhs[0] = mxCreateDoubleMatrix(rowLen, colLen, mxREAL); x = mxGetPr(prhs[0]);
funcion(x); }
void funcion(double* x){
double a; a=x[2][2] }
Pero entre que me lio aun con los punteros y no se exactamente en que formato llegan los datos a la mexFunction... Sólo quiero poder usar la matriz en otra funcion, no debe ser muy dificil... Pero no se si tengo q hacer un array de vectores o si ya esta la memoria reservada... Además, mxCreateDoubleMatrix parece que crea un vector (1 dimension) no una matriz no??
Muchas graciass.
Título: Re: mexxFunction Matrices??
Publicado por: m0skit0 en Domingo 22 de Febrero de 2009, 00:44
Hola fernandovallecordoba, te agradecería que utilices etiquetas de código.