29/07/2010, 08:32
|
| | Fecha de Ingreso: abril-2010 Ubicación: Rosario
Mensajes: 1.850
Antigüedad: 14 años, 8 meses Puntos: 228 | |
Respuesta: Declaracion de arrays Para la dos dimensiones tienes que usar la logica....
Un array de dos dimensiones trata de un doble puntero.. Osea
int **matriz;
El primer puntero apunta a un array de punteros a entero, y en ese array apunta a n enteros...
Entonces la declaracion quedara algo asi:
int **matriz = malloc(n * sizeof(*int));
for(i=0;i<n;i++)
matriz[i] = malloc(n * sizeof(int));
La idea es que primero reservas espacio para n punteros a enteros. Y luego por cada puntero reservas espacio para n enteros.... Lo bueno de estos, es que si no necesitas que sea perfectamente cuadrada la matriz puedes ir variando la cantidad de memoria guardada.
Te recomendaria que busques en internet, hay muchos dibujos explicativos para reservar memoria.
Y sobre lo de bool, en C no existe el tipo bool! Existe en C++. |