Exercícios Resolvidos de Manipulando ponteiros: ponteiros duplos, aritmética e vetores
Ver TeoriaEnunciado
Faça um programa que declare uma array de 10 elementos inteiros, e receba os valores do usuário. Depois exiba a posição, endereço de memória e valor contido em cada elemento da array.
Passo 1
E aí, galerinha!
Nessa questão vamos precisar criar uma array, receber os valores da array e imprimi-los. O detalhe é que também vamos imprimir os endereços de memória de cada posição da array.
Para acessar o endereço de memória de uma array, é só a gente usar o vetor sem os colchetes. Um vetor sem colchete funciona como endereço de memória para a primeira posição. E se a gente adicionar um, apontaremos para a segunda posição. Se adicionar dois, vamos apontar para a segunda posição, e assim por diante...
Mas antes, vamos começar com o cabeçalho do código.
Passo 2
A primeira coisa a fazer é a gente criar uma array de inteiros. Então dentro da vamos declarar o vetor com dimensão
Para preencher esse array vamos usar um loop que vai executar dez iterações, começando em 0 e indo até 10 de um em um.
Em cada rodada vamos pedir pro usuário inserir um valor, e armazenamos o valor inserido na posição do vetor.
Passo 3
Show de bola. Agora vamos pra parte mais importante da questão.
O que precisamos fazer é imprimir o índice do vetor, o endereço daquela posição, e o valor contido nessa posição. Então, pra deixar nosso programa bonitão, vamos imprimir um cabeçalho:
Beleza, agora vamos ao que interessa.
A gente precisa imprimir o índice, endereço e valor de várias posições de um vetor, então vamos usar um loop para realizar uma iteração sobre esse vetor.
Dentro do loop, primeiro vamos imprimir a posição .
Em seguida, vamos imprimir o endereço de memória. O endereço de memória da posição pode ser obtido usando .
E também vamos exibir o conteúdo do endereço . Para isso é só a gente usar o operador de desreferência , junto com os parêntesis: e obteremos o conteúdo armazenado no endereço.
E prontinho! Podemos terminar o programa.
Passo 4
E agora, vamos rodar e ver se funciona.
E deu tudo certo! Até mais!