Punteros

14. Arreglos de punteros.

NO es lo mismo un puntero a un arreglo, que un arreglo de punteros!!

  • Arreglo de punteros, no es otra cosa que un arreglo, que tiene espacios consecutivos asignados  en la memoria ( por ser arreglo) y que almacena direcciones de memoria ( por ser puntero)
  • Puntero a un  Arreglo, es solo un puntero que apunta a un arreglo, recordemos que por ejemplo el nombre de un arreglo es un puntero al 1er elemento de un arreglo.

La sintaxis es la esperada para arreglo de punteros es:

tipo  puntero [cantidad_de_valores]; //posiciones contíguas de memoria para almacenar direcciones de memoria.

Veamos un ejemplo:

Alternativa:

Se puede ver en la salida claramente que los espacios son consecutivos, separados por 4 bytes ( tammaño de float) y que en este caso NO apuntan a nada, lógicamente.




Veamos el siguiente código:
Algo como :
  • espacio solicitado con new, como new float[5] => asigna 5 espacios consecutivos!!!
  • float *pa[5] no tiene new!! NO reserva espacio!! solo DECLARA UN ARREGLO DE PUNTEROS

La salida de este código sería para entradas 1,2,3,4,5,6,7,8,9,10


No hay NOMBRES de variables !!, Es un arreglo de punteros!!