Introdução
Na programação C, ponteiros são usados para armazenar os endereços de memória de outras variáveis. De forma semelhante, um ponteiro para um ponteiro é uma variável que armazena o endereço de memória de outra variável ponteiro. Neste laboratório, aprenderemos como escrever um programa C que lida com ponteiros para ponteiros.
Declarar Variáveis Necessárias
Nesta etapa, declararemos três variáveis: var, *ptr e **pptr.
int var;
int *ptr;
int **pptr;
Atribuir Valor à Variável var
Nesta etapa, atribuiremos um valor à variável var.
var = 50;
Atribuir Endereço de var ao Ponteiro ptr
Nesta etapa, atribuiremos o endereço da variável var ao ponteiro ptr.
ptr = &var;
Atribuir Endereço de ptr ao Ponteiro para Ponteiro pptr
Agora, atribuiremos o endereço do ponteiro ptr à variável ponteiro para ponteiro pptr.
pptr = &ptr;
Acessar Valor Usando pptr
Finalmente, acessaremos o valor de var usando a variável ponteiro para ponteiro pptr.
printf("\nValue of var = %d\n", var);
printf("\nValue available at *ptr = %d\n", *ptr);
printf("\nValue available at **pptr = %d\n", **pptr);
A primeira instrução printf imprimirá o valor da variável var.
A segunda instrução printf imprimirá o valor disponível no endereço de memória armazenado em ptr, que deve ser o valor de var.
A terceira printf imprimirá o valor disponível no endereço de memória armazenado em pptr, que deve ser o valor de ptr, e então fará a desreferenciação duas vezes para obter o valor de var.
Escrever Código Completo em main.c
Agora que passamos pelos vários passos, podemos juntar o código na função main de main.c.
#include <stdio.h>
int main()
{
int var;
int *ptr;
int **pptr;
var = 50;
ptr = &var;
pptr = &ptr;
printf("Value of var = %d\n", var);
printf("Value available at *ptr = %d\n", *ptr);
printf("Value available at **pptr = %d\n", **pptr);
return 0;
}
Resumo
Neste laboratório passo a passo, aprendemos como escrever um programa C que lida com ponteiros para ponteiros. Declaramos as variáveis necessárias, atribuímos um valor à variável, atribuímos o endereço da variável ao ponteiro, atribuímos o endereço do ponteiro ao ponteiro para ponteiro e, finalmente, acessamos o valor da variável usando o ponteiro para ponteiro. Estar familiarizado com ponteiros para ponteiros é um passo crucial no aprendizado da programação em C.



