Neste post vamos ver um exemplo de como usar ponteiros em Lingaugem C. Ponteiros apontam para endereços de memória.
No vídeo abaixo são mostrados os códigos apresentados no post:
Códigos
Como exemplo de uso de ponteiros, vamos supor que desejamos criar uma função que some 10 a um determinado valor. Para isso implementamos o seguinte código em Linguagem C:
#include <stdio.h>
void soma (int a) {
a = a + 10;
}
int main() {
int x = 30;
soma(x);
printf ("O valor de x = %d", x);
return 0;
}
Criamos a função soma, que recebe como parâmetro um valor inteiro, e dentro da função soma 10 ao valor recebido. Quando compilamos e executamos o nosso código, é esperado que o valor de x passe de 30 para 40, uma vez que dentro da função principal é chamado a função soma que recebe como parâmetro o valor de x.
Entretanto, quando rodamos o nosso código, observamos que o valor retornado é 30 e não 40, o que acontece é que a função não retorna nenhum valor e não soma 10 ao valor de x.
Então como podemos fazer com que a função soma some 10 ao valor de x sem retornar nenhum valor?
Para isso podemos usar ponteiros em Linguagem C. Ponteiros apontam para endereços de memória.
Abaixo é apresentado o código usando ponteiros:
#include <stdio.h>
void soma (int *a) {
*a = *a + 10;
}
int main() {
int x = 30;
soma(&x);
printf ("O valor de x = %d", x);
return 0;
}
Após compilar e executar o código acima, será somado 10 ao valor de x.
Conclusão
Neste post vimos ponteiros em Linguagem C, e vimos como podemos utilizá-los para manipular dados na memória. É importante tomar cuidado ao usar ponteiros em Linguagem C, pois quando o código se torna muito grande e se usa muitos ponteiros isso pode criar erros e bugs difíceis de se resolver.
Isso é tudo e até o próximo post.