Ponteiros – Linguagem C/C++

shape
shape
shape
shape
shape
shape
shape
shape

Ponteiro é um recurso da linguagem C que consiste em:

  • Apontar ou acessar endereços de memória.
  • Acessar variáveis que não são acessíveis em uma função.
  • Retornar um ou mais valores em uma função.
  • Entre outros…

Como declarar um ponteiro:

Tipo *Variável;

Exemplo:

#include 

void main()
{
int *p, q;
q = 1;
p = &q;
printf("P: %d", &q);
}

No exemplo acima um ponteiro ‘p’ e uma variável ‘q’ são declarados, ‘q’ recebe 1 e ‘p’ recebe o endereço de memória da variável ‘q’, vale lembrar que o & (‘e’ comercial) mostra o endereço de memória, como ‘p’ é um ponteiro então ele apontará para o valor que está armazenado naquele endereço de memória. Imagine gavetas enumeradas de um guarda-roupa, podemos imaginar essa numeração como endereços de memória e o que o ponteiro faz é apontar para numeração dessa gaveta, mostrando o seu conteudo:

 Usando ponteiros em funções:

#include 

void func(int *p);

void main()
{
int x;
x = 1;
printf("Valor de X antes da funcao: %d", x);

//Chamando função.
func(&x);

//Exibe valor de x depois de executar a função.
printf("\nValor de X depois da funcao: %d", x);
}

void func(int *p)
{
//Ponteiro *P apontando para o endereço de memória da variável X na função main() ou principal.
printf("\nPonteiro P: %d", *p);

//Altera valor da variável X.
*p = 2;
}

O programa acima terá a seguinte saída:

Valor de X antes da funcao: 1
Ponteiro P: 1
Valor de X depois da funcao: 2

A variável ‘x’ é declarada com o valor igual à 1, o endereço de memória da variável ‘x’ é passado ao ponteiro ‘p’ através dos parâmetros da função ‘func’, então ‘p’ aponta para o endereço de ‘x’ e atribui o valor 2.

One Comment:

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *