Matriz de ponteiros C ++

Matriz de ponteiros C ++
Array contém a lista de elementos de acordo com o tamanho que fornecemos no momento da criação de matrizes. Considerando que, em C ++, os ponteiros são as variáveis ​​que têm os endereços de outras variáveis. Esses ponteiros têm o endereço de uma única variável e podem armazenar o endereço das células da matriz. Tanto as matrizes quanto os ponteiros estão intimamente relacionados entre si, como em C ++, o nome da matriz é considerado um ponteiro porque consiste no endereço do elemento. Portanto, a matriz contém os elementos e os ponteiros contêm o endereço de variáveis. Portanto, a matriz de ponteiro ou 'matriz de ponteiro' descreve uma matriz com o endereço dos elementos presentes na matriz. Este tópico conterá o fenômeno da matriz de ponteiros em C++.

Sintaxe

Em C ++, se tivermos que declarar uma variedade de dicas, criamos uma matriz que contém o endereço dos elementos presentes dentro dele que apontam para alguns valores de endereço.

# tipo *pointer_name [array_size];

De acordo com a sintaxe, se você estiver disposto a criar uma matriz de ponteiro, definimos o tipo de ponteiro de matriz. Depois disso, o nome da matriz de ponteiro é declarado. Como você pode ver da sintaxe que "*" é usado com o nome de um ponteiro em c++. Depois de nomear a matriz, o tamanho da matriz é declarado que mostra quantos elementos estarão presentes na matriz.

# Int *newp [5];

Trabalho de Pontenters Array em C++

O valor do ponteiro aponta para o endereço dos valores presentes dentro da matriz. Se você estiver disposto a acessar os valores, podemos acessar cada valor usando o endereço deles, porque ele apenas aponta para esse endereço específico. O uso de ponteiros torna as operações de funcionalidade mais eficientes e também afeta o nível de desempenho. Agora veremos que como declarar uma matriz de ponteiro.

Como usamos uma amostra Declaração de Ponteiro acima.

# Int *newp [5];

Nesta linha acima, declaramos uma variedade de ponteiros com 5 elementos. Esta matriz conterá o endereço dos valores nele. O endereço é a localização do elemento em que a matriz é armazenada dentro da memória. Este endereço de memória sempre vira o ponto para o elemento que é armazenado naquele local.

Criação de matrizes de ponteiros em c++

Existem algumas etapas para criar uma variedade de dicas em C++

Primeiro, criamos uma matriz tendo elementos. Suponha que tenhamos 5 elementos.

# Int newArray [5] = 1,2,3,4,5;

Depois disso, criamos uma matriz de ponteiro que armazena o endereço de elementos da matriz.

# Int "newp [5];

Se você deseja obter o endereço dos elementos na matriz, use o operador '&', isso nos dará o endereço dos valores na memória.

# Newp [1] = & newp [1];

Depois disso, o endereço dos elementos é armazenado nas matrizes de ponteiros usando o loop.

Agora podemos acessar os elementos da matriz com os ponteiros; Isso fornecerá o mesmo valor. Agora usaremos alguns exemplos elementares aqui que o ajudarão no conceito de compreensão.

Exemplo 1

Neste exemplo, simplesmente exibimos os valores dentro da matriz. Mas desta vez, isso não é feito exibindo os valores através do número interno, mas usando ponteiros. Então, primeiro passo no programa principal, criamos dinamicamente a matriz de tamanho 5.

# Int*p = new int [5];

Depois disso, como descrevemos antes na parte do tópico "Criação de uma variedade de ponteiros em C ++", a matriz é inicializada com os números. Usaremos o loop para inserir os valores nos respectivos índices. Isso é feito através dos ponteiros. '10' é uma constante aqui que é usada para multiplicar o valor com o próximo; Esta é uma abordagem inteligente para atribuir os valores.

# 2 [P]

Agora o valor de P é 1, então, depois de se multiplicar, será 2, no ponto.

Por exemplo, quando o loop itera pela primeira vez, o valor de "i" será '0'; portanto, quando nos parênteses, será adicionado com 1, ele se tornará 1 e, depois de se multiplicar com a constante, o o resultado será igual à própria constante. Para o segundo índice, na próxima iteração, quando o valor de I é '1', após adição com 1, será 2, então, quando for multiplicado por 10, ficará 20. E então assim por diante em cada iteração até que o valor a ser inserido seja 50. No caso de exibir os valores através de ponteiros, usamos técnicas diferentes; Isso certamente será benéfico para você para entender a perspectiva. A primeira saída que fornece a declaração contém:

# *p

Como sabemos que este símbolo '*' exibe o endereço, uma coisa deve ser lembrada: quando usamos um ponteiro para exibir o valor sem usar o índice, atribui automaticamente o primeiro valor por padrão, o resultado será 10. O próximo é:

# *p + 1

Ele simplesmente adicionará o valor padrão com um, então a resposta é 11. Movendo -se em direção ao próximo valor,

# *(p + 1)

Agora, desta vez, falaremos sobre o índice, mas não o endereço como "*" não está com P. Portanto, indica '0', este 0 será adicionado com 1 e formas *(1), então, na 1 posição, é 20, para que seja exibido.

Da mesma forma, outros resultados serão exibidos. No final, o ponteiro é encerrado, pois também assumimos o resultado desse valor incrementado.

Para o valor resultante, vá para o terminal do Linux e use o compilador G ++ para compilar e executar o código.

$ G ++ -O Array.c
$./variedade

Exemplo 2

Este exemplo está relacionado à exibição de endereços usando matrizes e ponteiros para exibir a diferença entre eles. Para esse fim, no programa principal, declaramos uma matriz com um tipo de dados float. A variável ponteiro de flutuação é declarada.

# *ptr;

Agora, com a ajuda deste ponteiro, poderemos exibir o endereço. Mas primeiro, vamos exibir o endereço dos elementos usando uma matriz. Isso é feito através de um loop for. Esta é a maneira fácil e genérica de exibir o conteúdo da matriz através do número do índice.

# Ptr = arr;

Usando as notações do ponteiro, exibiremos o endereço através dos ponteiros. Novamente, um loop é usado para exibir o endereço através do ponteiro.

Use novamente o compilador G ++ para compilar e execute o código no terminal Linux para exibir os valores resultantes.

Ao executar o código, você verá que a resposta para ambos os métodos é a mesma; por meio de uma matriz ou através dos ponteiros, o mesmo resultado é obtido.

Conclusão

Uma variedade de ponteiros é usada em C ++ no sistema operacional do Ubuntu Linux para elaborar os dados de busca através do endereço e matrizes. Este artigo foi sobre a variedade de ponteiros em C++. Nós elaboramos a sintaxe e alguns exemplos relacionados a ponteiros. Esses exemplos podem ser implementados em qualquer compilador conforme a escolha do usuário.