Saludos.
Un array es un puntero al primer elemento de éste, como dices en tu ejemplo, efectivamente apunta a la letra 'E'. De hecho te invito a que pruebes esto:
char c[]="Puntero";
cout<<*c<<endl;
cout<<*(c+(1*sizeof(char)))<<endl;
Comprobarás que sale por pantalla la letra 'P' y luego la 'u'.
Pero un array tiene la salvedad de que está indexado, es decir, podemos acceder a sus componentes sin pasar primero por todas las anteriores (por ej. v[5] --> accedo directamente a la 6ª componente), cosa que por ej. una lista enlazada de nodos, no.
No estoy seguro, pero al acceder a los índices del array en cuestión, me imagino que tomará el puntero al primer elemento y le sumara n*sizeof(<tipo_array>), tal como he hecho en mi ejemplo.
Saludos.
Orale amigo gracias alfín entiendo xDD Bueno osea que esto:
char c[]="Puntero";
cout<<*c<<endl;
cout<<*(c+(1*sizeof(char)))<<endl;
y esto:
char c[]="Puntero";
cout << c[0] << endl;
cout << c[1] << endl;
Es exactamente lo mismo, o existe alguna diferencia?
A mi parecer es exactamente lo mismo. Pero claro soy un novato xD