#include <stdio.h>
main(){
int v[100];
int i, *p;

for (i=0; i < 8; i++) v[i] = i;

printf("\nRecorrido usando v[i]:\n");
for (i=0; i < 8; i++) 
  printf ("%d\t", v[i]);
printf ("\n");

printf("\nRecorrido usando punteros:\n");
p = v;
for (i=0; i < 8; i++) 
 printf ("%d\t", *p++); /* equivale a mostrar *p y hacer p++*/
printf("\n");

printf ("\nAhora calculo las direcciones y muestro el contenido\n");
p = v;
for (i=0; i < 8; i++) printf ("%d\t", *(p+i)); printf("\n"); 
/* Calcula la dirección, por los paréntesis, y después muestra el contenido */

getchar();

/* Tras cada p++ el puntero señala a la siguiente posición en v */
/* DIFERENCIA ENTRE *p++ y (*p)++*/

printf ("\n DIFERENCIA ENTRE *p++ y (*p)++ \n");

printf ("\nAhora voy a recorrer el vector utilizando (*p)++\n");
p = v;
for (i=0; i < 8; i++) printf ("%d\t", (*p)++); printf("\n"); 
printf ("\nAhora voy a recorrer el vector utilizando *(p+i)\n");
p = v;
for (i=0; i < 8; i++) printf ("%d\t", *(p+i)); printf("\n");
p = v;
/* for (i=0; i < 8; i++) printf ("%d\t", p[i]); printf("\n"); 
/* Esto es lo mismo */
}
