Projeto 10: Inspetor de Memória Interativo 🔍
Neste projeto, você colocará em prática o uso de ponteiros para investigar como o computador armazena os dados que o usuário digita.
🎯 Objetivo
Desenvolver um programa que peça um valor ao usuário, use um ponteiro para alterá-lo e exiba um "Raio-X" da variável na memória RAM.
🛠️ Requisitos
- Solicitar um número inteiro do usuário.
- Declarar um ponteiro que aponte para essa variável.
- Exibir:
- O valor original.
- O endereço de memória (em hexadecimal usando
%p). - O tamanho da variável em bytes (usando
sizeof).
- Alterar o valor da variável usando apenas o ponteiro (ex:
*p = 500;). - Exibir o novo valor da variável original.
💻 Exemplo de Saída
=================================
INSPETOR DE MEMÓRIA
=================================
Digite um número: 42
RELATÓRIO:
> Valor: 42
> Endereço: 0061FF1C
> Tamanho: 4 bytes
Alterando valor via ponteiro...
> Novo Valor: 500
=================================
🚀 Passo a Passo
- Crie um arquivo chamado
inspetor.c. - Declare as variáveis
numeint *p. - Peça o número ao usuário.
- Aponte o ponteiro:
p = #. - Use
printfcom os formatadores%d,%pe%zu(parasizeof). - Mude o valor com
*p = 500;. - Compile com
gcc inspetor.c -o inspetore execute.
[!IMPORTANT] Explicação: Note que mesmo mudando o valor através do ponteiro
p, a variávelnumoriginal foi alterada. Isso acontece porqueptem a "chave" (o endereço) do apartamento ondenumvive.