Pular para conteúdo

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

  1. Solicitar um número inteiro do usuário.
  2. Declarar um ponteiro que aponte para essa variável.
  3. Exibir:
    • O valor original.
    • O endereço de memória (em hexadecimal usando %p).
    • O tamanho da variável em bytes (usando sizeof).
  4. Alterar o valor da variável usando apenas o ponteiro (ex: *p = 500;).
  5. 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

  1. Crie um arquivo chamado inspetor.c.
  2. Declare as variáveis num e int *p.
  3. Peça o número ao usuário.
  4. Aponte o ponteiro: p = #.
  5. Use printf com os formatadores %d, %p e %zu (para sizeof).
  6. Mude o valor com *p = 500;.
  7. Compile com gcc inspetor.c -o inspetor e execute.

[!IMPORTANT] Explicação: Note que mesmo mudando o valor através do ponteiro p, a variável num original foi alterada. Isso acontece porque p tem a "chave" (o endereço) do apartamento onde num vive.