✅ O que são Ponteiros?

Ponteiros são variáveis que armazenam endereços de memória em vez de valores diretos. Com eles, podemos acessar e manipular dados indiretamente, trabalhando com o local onde uma variável está armazenada. São muito usados em funções, arrays, structs e alocação dinâmica de memória.


🧩 Estrutura Básica de um Ponteiro

Sintaxe:

tipo *nome_do_ponteiro;

Exemplos:

int *ptr;

🧠 Explicando a sintaxe:

Como funciona:


📌 Exemplo Prático: Ponteiro para Inteiro

#include <stdio.h>

int main() {
    int numero = 42;
    int *ptr;  // declaração de um ponteiro para int

    ptr = &numero;  // ptr recebe o endereço de numero, perceba que é o ENDEREÇO utilizando & e não a variável

    printf("Valor de numero: %d\n", numero);
    printf("Endereco de numero: %p\n", &numero);
    printf("Valor armazenado em ptr (endereco): %p\n", ptr);
    printf("Valor apontado por ptr: %d\n", *ptr);

    return 0;
}

🧾 Observações:


Ponteiros e Funções

Ponteiros permitem que funções modifiquem variáveis externas, já que podem acessar o endereço original.