Até este momento, a manipulação de memória foi realizada de forma indireta, por meio de variáveis e arrays. Esses elementos permitem acessar dados armazenados na memória sem que seja necessário conhecer explicitamente seus endereços.

Os ponteiros introduzem uma abordagem diferente: eles permitem operar diretamente sobre a memória, por meio da manipulação de endereços.


1.1 Definição de Ponteiros

Um ponteiro é uma variável cujo valor corresponde ao endereço de memória de outra variável.

Dessa forma, um ponteiro permite:

Por essa razão, diz-se que um ponteiro “aponta” para uma região da memória.

1.2 Declaração de Ponteiros

A declaração de um ponteiro é realizada utilizando o operador *:

int *ponteiro;

Nesse exemplo:

Essa informação é importante porque define quantos bytes serão considerados ao acessar o conteúdo apontado.


1.3 Obtendo Endereços de Memória

Para obter o endereço de uma variável, utiliza-se o operador &, conhecido como operador de referência: