Puntero a un conjunto de arrays_arrays bidimensionales en C
Publicado por Alexa (7 intervenciones) el 20/06/2020 23:17:36
Tengo una duda en el uso de arrays bidimensionales mediante punteros. En mi libro he visto cuando defino un array bidimensional mediante un puntero a un conjunto de arrays unidimensionales se representa con el paréntesis así:
int (*tabla_1)[nfilas], y cuando se se define como un array de punteros así: int *tabla_1[nfilas]. Cuando quiero definir el tamaño del array usando malloc en el segundo caso se usa :
Pero en el primer caso no se como asignar la memoria dinámica,
Intento hacerlo así pero no me salen errores.
int (*tabla_1)[nfilas], y cuando se se define como un array de punteros así: int *tabla_1[nfilas]. Cuando quiero definir el tamaño del array usando malloc en el segundo caso se usa :
1
2
3
4
5
int *tabla_1[nfilas];
int i;
for(i=0;i<nfilas;i++){
tabla_1[i]=(int *)malloc(ncolumnas*sizeof(int));
}
Pero en el primer caso no se como asignar la memoria dinámica,
1
2
3
4
int (*tabla_1)[nfilas];
int i;
for(i=0;i<nfilas;i++){
*(tabla_1+i)=(int *)malloc(ncolumnas*sizeof(int));}
Intento hacerlo así pero no me salen errores.
Valora esta pregunta
0