Ponteiros
Last updated
Last updated
Cada variável na linguagem C é armazenada em um local na memória do seu computador.
Ponteiros serve para pegarmos e mexermos o endereço de memória que foi utilizada no computador, assim temos mais controle do que estamos fazendo com a memória sendo utilizada.
É muito utilizada nos Vetores e Funções, tendo seu uso muito importante na Linguagem C, onde com os ponteiros podemos alterar os valores armazenados em um ponto da memória
Usamos o *
para duas coisas:
Quando usamos o * na direita de um tipo de dado, estamos dizendo que essa variável é um Ponteiro.
Quando usamos o * na esquerda do nome do ponteiro significa que estamos chamando o valor que existe naquele endereço de memória.
Usamos o &
para pegar o endereço de memória de uma variável.
No scanf() é usado para pegar o endereço de memória da variável e adicionar o valor que for entrar.
No Ponteiro ele pega onde a variável está armazenada.
Usamos o Modificador %d sempre que queremos imprimir um valor inteiro, mas se queremos apresentar um Endereço de memória usamos outro tipo de Modificador especial.
Com o Modificador %p podemos imprimir na tela qual o endereço de memória da variável que foi adicionada em um Ponteiro.
Endereços de Memória é um valor do tipo Hexadecimal, sendo que cada vez que tu verifica o endereço de memória pode ser um valor diferente
Um ponteiro válido é um ponteiro que aponta para uma área de memória válida(normalmente uma variável).
Se um ponteiro não for válido, ele vai entregar um erro chamado Falha de Segmentação(Segmentation Fault) no Linux.
É uma boa prática armazenar o valor NULL em ponteiros não inicializados.
Podemos usar isso para podermos verificar se o ponteiro foi inicializado ou não.
NULL é simplesmente uma constante definida como ZERO.