Existe
una equivalencia casi total entre arrays y punteros.
Cuando
declaramos un array estamos haciendo varias cosas a la vez:
Declaramos un puntero del mismo tipo que los elementos del array,
y que apunta al primer elemento del array.
Reservamos memoria para todos los elementos del array. Los elementos
de un array se almacenan internamente en el ordenador en posiciones
consecutivas de la memoria.
La
principal diferencia entre un array y un puntero es que el
nombre de un array es un puntero constante, no podemos hacer que
apunte a otra dirección de memoria.
Además, el compilador asocia una zona de memoria para los
elementos del array, cosa que no hace para los elementos apuntados
por un puntero auténtico.
|