#include #include int A,B; double X,Y; int VetorI[10]; double VetorD[10]; int *PtrI; double *PtrD; int main(int argc, char *argv[]) { int *pti; printf ("\n\n"); printf (">> Testes com Ponteiros <<"); printf ("\n\n"); /* Aloca 2 vetores de 10 elementos cada */ /* PtrI é um vetor de Inteiroe e PtrD de Doubles */ printf ("Valor inicial do Ponteiro PtrI = %p\n",PtrI); printf ("Valor inicial do Ponteiro PtrD = %p\n",PtrD); PtrI = (int *)calloc(10, sizeof(int)); PtrD = (double *)calloc(10, sizeof(double)); printf ("Valor apos calloc do Ponteiro PtrI = %p\n",PtrI); printf ("Valor apos calloc do Ponteiro PtrD = %p\n",PtrD); printf ("\n"); /* Inicializa os elmentos [0] e [1] dos vetores estáticos */ VetorI[0]=255; VetorI[1]=1; VetorI[9]=15; VetorD[0]=1.0; VetorD[9]=2.0; /* Inicializa os elementos [0] e [1] dos vetores dinâmicos */ PtrI[0]=255; PtrI[1]=1; PtrI[9]=15; PtrD[0]=1.0; PtrD[9]=2.0; /* Exibe os elementos [0] e [1] do vetor dinâmico de Ints */ printf ("Valores atribuidos: 255 e 1 \n"); printf("PtrI[0] = %d\n",PtrI[0]); printf("PtrI[1] = %d\n",PtrI[1]); /* Manipula os dados do vetor dinâmico usando ponteiros */ pti=PtrI; *pti=0; pti++; *pti=65535; /* Exibe como ficaram os dados do vetor dinâmico de Ints */ printf ("Valores modificados: 0 e 65535 \n"); printf("PtrI[0] = %d\n",PtrI[0]); printf("PtrI[1] = %d\n",PtrI[1]); printf("\n"); /* Exibe os elementos [0] e [1] do vetor estático de Ints */ printf ("Valores atribuidos: 255 e 1 \n"); printf("VetorI[0] = %d\n",VetorI[0]); printf("VetorI[1] = %d\n",VetorI[1]); /* Manipula os dados do vetor estático usando ponteiros */ pti=VetorI; *pti=0; pti++; *pti=65535; /* Exibe como ficaram os dados do vetor estático de Ints */ printf ("Valores modificados: 0 e 65535 \n"); printf("VetorI[0] = %d\n",VetorI[0]); printf("VetorI[1] = %d\n",VetorI[1]); /* Termina o programa */ printf("\n\n"); system("PAUSE"); return 0; }