Dando continuidade ao nosso Curso de Programação C, quando aprendemos sobre a estrutura de dados vetor eu disso que um vetor fica armazenado de forma sequência na memória do computador. Na aula de hoje vamos ver como imprimir o endereço e o conteúdo de cada posição de um vetor de inteiros, confirmando a informação sobre um vetor ser armazenado de forma sequência na memória.
Como já vimos, precisamos de uma repetição para percorrer um vetor. Como o nome do vetor é um ponteiro para a primeira posição do vetor na memória, basta realizarmos uma aritmética de ponteiros entre o nome do vetor e o índice da repetição para obtermos o endereço de cada posição do vetor, assim:
// vet + i --> endereço de cada posição // *(vet + i) --> elemento do endereço resultante da aritmética de ponteiros for(i = 0; i < 10; i++) printf("Endereco: %p\tConteudo: %d\n", vet + i, *(vet + i));
Código completo em C para imprimir o endereço e o conteúdo de cada posição de um vetor de inteiros
/* Aula 194: Exercício 3 Código escrito por Wagner Gaspar Maior de 2021 3) Crie um programa que contenha um array de inteiros com 10 elementos. Imprima o elemento e o endereço de cada posição do array. */ int main(){ int i, vet[10] = {0,1,2,3,4,5,6,7,8,9}; for(i = 0; i < 10; i++) printf("Endereco: %p\tConteudo: %d\n", vet + i, *(vet + i)); return 0; }