El código básicamente trae dos formas de hacer esto, en la primera hay dos funciones, una que carga elementos en la matríz y la otra hace un arreglo para poder leerla luego en el 'main'
No tiene mucho sentido usar una matríz global pero para hacer una demostración sirve. yo estaba tratando de usar algo como esto para una matríz de char que es miembro de una clase...
En el main así como está puede leerse sólo el primer elemento, se puede modificar para leer todos automáticamente, pero eso no es parte del tema
El título tampoco parece ser la mejor explicación de esto igualmente..
Código:
//---------------------------------------------
char MATRIX[6][6];//global
//---------------------------------------------------
char** CargarItems1(){
for(int i=0; i<6;i++){
strcpy(MATRIX[i], "12345");
}
return (char**)&MATRIX[0][0];
}
char* LeerItems1(int pos_vec){
DWORD* vecofvectors = (DWORD*)CargarItems1();
return *(char**)vecofvectors+(pos_vec*6);
}
//-----------------------------------
DWORD* CargarItems2(){
for(int i=0; i<6;i++){
strcpy(MATRIX[i], "12345");
}
return (DWORD*)&MATRIX[0][0];
}
char* LeerItems2(int pos_vec){
DWORD* vecofvectors = CargarItems2();
return (char*)vecofvectors+(pos_vec*6);
}
//---------------------------------------------------------
int main()
{
int pos=0; // de 0 a 5
char* vec_de_matrix = LeerItems(pos);
//char* vec_de_matrix = LeerItems2(pos);
MessageBox(0,vec_de_matrix,"ASD",0);
system("pause");
return 0;
}
Saludos