Tal vez: El
nombre del array no es mas que un puntero que apunta al primer elemento xD. Al ser un puntero se lo puede tratar como tal, por ejemplo:
char arrNombre[]="Yahoo";
printf("%c\n",arrNombre
[i
]); /* imprime un caracter usando subindices */
printf("%c\n",*(arrNombre+i)); /* imprime un caracter usando aritmetica de punteros */
Saludos
PD: en el proceso de compilacion se traduce arrNombre
en *(arrNombre+i)
PD: según tengo entendido es para que la variable de tipo char almacene ma sde 1 dato
la palabra no seria almacenar sino apuntar, ya que en el caso del char * lo que hace
nombre es apuntar a la direccion donde se encuentra la palabra "Yahoo"