Sintassi
In C ++, se dobbiamo dichiarare un array di puntatori, creiamo un array che contiene l'indirizzo degli elementi presenti al suo interno che indica alcuni valori di indirizzo.
# type *pointer_name [array_size];
Secondo la sintassi, se sei disposto a creare un array di punta. Successivamente, il nome dell'array di puntatore è dichiarato. Come puoi vedere dalla sintassi che "*" viene usato con il nome di un puntatore in C++. Dopo aver nominato l'array, viene dichiarata la dimensione dell'array che mostra quanti elementi saranno presenti nell'array.
# Int *newp [5];
Lavorare con i suggerimenti Array in C++
Il valore del puntatore punta all'indirizzo dei valori presenti all'interno dell'array. Se sei disposto ad accedere ai valori, possiamo accedere a ciascun valore utilizzando il loro indirizzo perché indica solo quell'indirizzo specifico. L'uso di puntatori rende le operazioni di funzionalità più efficienti e influenza anche il livello di prestazione. Ora vedremo come dichiarare un array di punta.
Come abbiamo usato una dichiarazione di campione di array di puntatore sopra.
# Int *newp [5];
In questa linea sopra, abbiamo dichiarato una serie di puntatori con 5 elementi. Questo array conterrà l'indirizzo dei valori in esso. L'indirizzo è la posizione dell'elemento in cui l'array viene memorizzato all'interno della memoria. Questo indirizzo di memoria trasforma sempre il punto all'elemento che viene archiviato in quella posizione.
Creazione di array di puntatori in C++
Ci sono alcuni passaggi per creare una serie di puntatori in C++
Innanzitutto, creiamo un array con elementi. Supponiamo di avere 5 elementi.
# Int newarray [5] = 1,2,3,4,5;
Dopodiché, creiamo un array di puntatore che memorizza l'indirizzo degli elementi dell'array.
# Int "newp [5];
Se si desidera ottenere l'indirizzo degli elementi nell'array, usa l'operatore '&', questo ci darà l'indirizzo dei valori nella memoria.
# Newp [1] = & newp [1];
Successivamente, l'indirizzo degli elementi viene archiviato nelle matrici di puntatori usando il loop.
Ora possiamo accedere agli elementi nell'array con i puntatori; fornirà lo stesso valore. Ora useremo alcuni esempi elementari qui che ti aiuteranno nel concetto di comprensione.
Esempio 1
In questo esempio, abbiamo semplicemente visualizzato i valori all'interno dell'array. Ma questa volta, non viene fatto visualizzando i valori attraverso il numero interno ma usando i puntatori. Quindi il primo passo nel programma principale, creiamo dinamicamente l'array di dimensioni 5.
# Int*p = new int [5];
Dopodiché, come abbiamo descritto in precedenza nella parte dell'argomento "Creazione di una serie di puntatori in C ++", l'array viene inizializzato con i numeri. Useremo per loop per inserire i valori nei rispettivi indici. Questo viene fatto attraverso i suggerimenti. '10' è una costante qui che viene utilizzata per moltiplicare il valore con quello imminente; Questo è un approccio intelligente per l'assegnazione dei valori.
# 2 [P]
Ora il valore di p è 1, quindi dopo moltiplicarsi, sarà 2, nel punto.
Ad esempio, quando il ciclo itera per la prima volta, il valore di "i" sarà "0", quindi quando nella parentesi verrà aggiunto con 1, diventerà 1 e dopo aver moltiplicato con la costante, il Il risultato sarà uguale alla costante stessa. Per il secondo indice, nella prossima iterazione, quando il valore di I è '1', dopo l'aggiunta con 1, sarà 2, quindi quando verrà moltiplicato per 10, diventerà 20. E poi così via in ogni iterazione fino a quando il valore da inserire è 50. Nel caso di visualizzare i valori attraverso i puntatori, abbiamo usato diverse tecniche; Questi saranno sicuramente vantaggiosi per te nella comprensione della prospettiva. Il primo output che fornisce l'istruzione contiene:
# *P
Come sappiamo che questo simbolo '*' visualizza l'indirizzo, una cosa dovrebbe essere tenuta a mente: quando usiamo un puntatore per visualizzare il valore senza usare l'indice, assegna automaticamente il primo valore per impostazione predefinita, il risultato sarà 10. Il prossimo è:
# *p + 1
Aggiungerà semplicemente il valore predefinito con uno, quindi la risposta è 11. Muoversi verso il valore successivo,
# *(p + 1)
Ora questa volta parleremo dell'indice ma non dell'indirizzo come "*" non è con P. Quindi indica '0', questo 0 verrà aggiunto con 1 e forme *(1), quindi in 1 posizione, è 20, quindi verrà visualizzato.
Allo stesso modo, verranno visualizzati altri risultati. Alla fine, il puntatore viene terminato poiché abbiamo anche preso il risultato di quel valore incrementato.
Per il valore risultante, visitare il terminale di Linux e utilizzare il compilatore G ++ per compilare ed eseguire il codice.
array di array $ g ++ -o.CEsempio 2
Questo esempio si riferisce alla visualizzazione di indirizzi usando array e puntatori per visualizzare la differenza tra loro. A tale scopo, nel programma principale, dichiariamo un array con un tipo di dati float. Viene dichiarata la variabile puntatore float.
# *PTR;
Ora con l'aiuto di questo puntatore, saremo in grado di visualizzare l'indirizzo. Ma prima, visualizziamo l'indirizzo degli elementi usando un array. Questo viene fatto attraverso un ciclo per. Questo è il modo semplice e generico di visualizzare il contenuto dell'array attraverso il numero dell'indice.
# Ptr = arr;
Usando le notazioni del puntatore, mostreremo l'indirizzo tramite i puntatori. Ancora una volta un ciclo per visualizzare l'indirizzo tramite il puntatore.
Utilizzare nuovamente il compilatore G ++ per compilare e quindi eseguire il codice nel terminale Linux per visualizzare i valori risultanti.
Mentre esegui il codice, vedrai che la risposta per entrambi i metodi è la stessa; attraverso un array o attraverso i puntatori, si ottiene lo stesso risultato.
Conclusione
Una matrice di puntatori viene utilizzata in C ++ nel sistema operativo Ubuntu Linux per elaborare il recupero dei dati attraverso l'indirizzo e gli array. Questo articolo riguardava la serie di puntatori in C++. Abbiamo elaborato la sintassi e alcuni esempi relativi ai puntatori. Questi esempi possono essere implementati su qualsiasi compilatore secondo la scelta dell'utente.