Programacao ATPS Ponteiros
PONTEIROS
Ponteiros nada mais é do que uma variável que guarda o endereço de memória de outra variável, pode ser definido da seguinte forma: int * pa; Essa declaração acima indica que pa é um ponteiro do tipo int. Podemos atribuir um valor ao um ponteiro declarado, precisamos saber que existem dois operadores usados no ponteiro. O primeiro operador já usado " * " através dele podemos retornar o valor da variável que está localizada no ponteiro. O segundo operador é " & " esse retorna o endereço de memória da variável que esta localizada no ponteiro. Então para atribuirmos um valor a um ponteiro devemos referenciar p valor da variável que se encontra no ponteiro utilizando o operador " * " , definindo ele da seguinte forma:
* pa = 20; Deste modo atribuímos o valor de 20 para a variável contida no ponteiro, se sua necessidade for retornar o endereço de memória desta variável você trocaria o operador " * " por " & " podendo ser exibido assim:
Printf (" Endereco de variavel = %d ",&pa);
1° Exemplo de ponteiros:
#include <stdio.h> void main() { int a,b; /* Definindo variáveis */ int *pa, *pb; /* Declarando ponteiros para as variáveis "a" e "b" */
/* Atribuindo valores para as variáveis "a" e "b" a = 20; b = 12;
/* Fazendo os ponteiros "pa" e "pb" apontarem para os endereços de memórias das variáveis "a" e "b" respectivamente. */ pa = &a; pb = &b;
/* Imprimindo os dados na tela, referentes aos ponteiros pa e pb declarados: */
Prinft (" Imprimindo o endereço do ponteiro pa : %d ",pa);
Prinft (" Imprimindo o endereço da variável contida no ponteiro pa : %d ",&pa);
Prinft (" Imprimindo o valor da variável contida no ponteiro pa : %d ",*pa);
Prinft (" Imprimindo o endereço do ponteiro pb : %d ",pb);
Prinft (" Imprimindo o endereço da variável contida no ponteiro pb : %d ",& pb);
Prinft (" Imprimindo o valor da variável contida no ponteiro pb : %d ",*pb);
system ("pause");
}
Fim do programa :
PA:
Imprimindo o endereço do ponteiro pa: 1245064