Ponteiro
Ponteiro é um tipo especial de variável. Ele armazena o endereço de outra variável. Significa sempre que qualquer loja de variável na memória, ele recebe um endereço específico. Pointer armazena este endereço dessa variável específica.
Exemplo de programação 1
#incluir
usando namespace std;
int main ()
int x = 15;
int *p; // declarando um ponteiro
p = & x;
cout<< &x << endl ; // address of x ;
cout<< p << endl ; // pointing the address of x ;
cout<< *p << endl ; // Dereferencing of a pointer;
retornar 0;
Saída
Explicação
Aqui, declaramos uma variável inteira x e dentro x atribuímos 15. Agora, declaramos uma variável de ponteiro do tipo inteiro *p.
p = & x;
Aqui dentro da variável ponteiro P, atribuímos o endereço de x. O endereço de X depende totalmente do nosso sistema operacional.
Se imprimirmos & x, ele mostra a saída do endereço da variável x.
Se imprimirmos a variável P, ele também obterá a saída do endereço da variável x.
Mas se imprimirmos o *P, na verdade, desreferências em nosso ponteiro. Isso significa que obtém a saída do valor de x variável.
Exemplo de programação 2
#incluir
usando namespace std;
int main ()
flutuar x = 15;
flutuar *p; // declarando um ponteiro
p = & x;
cout<< &x << endl ; // address of x ;
cout<< p << endl ; // pointing the address of x ;
cout<< *p << endl ; // Dereferencing of a pointer;
retornar 0;
Saída
Explicação
Se pegarmos a variável do tipo flutuante x e atribuirmos algum valor 1.5, então declaramos um ponteiro para segurar o endereço de x, temos que levar o tipo de ponteiro de flutuação.
Qualquer ponteiro contém o endereço da variável; Ambos têm o mesmo tipo de dados. Caso contrário, o erro ocorre.
Aritmético do ponteiro
Em C ++ com a ajuda do ponteiro, realizamos algumas operações aritméticas, como incremento, decréscimo, adição e subtração.
Exemplo de programação 3
#incluir
usando namespace std;
int main ()
int x = 15;
int *p = & x;
cout<< p << endl ; // address of x ;
p ++; // incremento de poiner
cout<< p << endl ;
retornar 0;
Saída
Ponteiro e matriz
Array sempre leva memória de maneira contígua. Podemos implementar uma matriz com a ajuda de ponteiro. Porque quando o ponteiro é incrementado, ele sempre aponta para o próximo bloqueio do endereço base da matriz. Ponteiro e Array têm o mesmo tipo de dados.
Exemplo de programação 4
#incluir
usando namespace std;
int main ()
int i;
int arr [] = 5, 10, 15; // declarando uma matriz;
int *p = arr; // inicializando o valor da matriz em um ponteiro;
cout<< *arr << endl ;
para (i = 0; i < 3 ; i++)
cout<< *p << endl ;
retornar 0;
Saída
Explicação
Podemos acessar uma matriz a um ponteiro. Neste exemplo, simplesmente declaramos uma matriz e inicializamos alguns valores. O endereço base da matriz para um ponteiro P. Agora, podemos imprimir o valor de cada elemento da matriz através de um ponteiro. Se incrementarmos o valor da PTR, ele simplesmente vai para o próximo bloco do endereço base da matriz.
Referência
Exceto variável e ponteiro normal, C ++ nos fornece um tipo especial de variável chamado variável de referência. Agora, aprendemos sobre a variável de referência.
Recursos da variável de referência
Exemplo de uma variável de referência
int x = 5;
Se queremos manter um nome alternativo da variável x, temos que seguir este procedimento.
int & y = a;
Isso significa que a variável de referência é criada apenas para referir a variável existente no programa. Com a ajuda da variável de referência, acessamos a variável x.
Exemplo de programação 5
#incluir
usando namespace std;
int main ()
int x = 15;
int & y = x;
cout<< x << “ “ << y << endl ;
++y;
cout<< x << “ “ << y << endl ;
retornar 0;
Saída
Explicação
Aqui, introduzimos uma variável de referência y que se refere à variável x pela linha & y = x. Em x, 5 é atribuído. Se quisermos imprimir a variável x e y, ambos mostram o mesmo resultado 5.
Se incrementarmos 1 para o valor de y e imprimirmos a variável x e y, ele mostra o mesmo resultado 6.
Conclusão
Discutindo em detalhes sobre o conceito de ponteiro e referência, chegamos a essa conclusão de que o endereço é o conceito mais poderoso em C++. Com a ajuda de ponteiro e referência, podemos monitorar as variáveis, matriz, função, estrutura etc. facilmente.