Array char dinamico C ++

Array char dinamico C ++
Un array dinamico è paragonabile a un array standard, tranne che le sue dimensioni possono essere modificate mentre il programma è in esecuzione. I membri di un array dinamico occupano una singola cache di memoria, una volta completata, un array dinamico potrebbe crescere esponenzialmente. La memoria di cache specificata viene assegnata a un array quando viene creata. Un array dinamico, d'altra parte, estende la sua capacità di memoria di un criterio specifico quando è necessario. Utilizziamo un array dinamico quando dobbiamo valutare le dimensioni in fase di esecuzione. In questo articolo, discutiamo i dettagli dell'array di caratteri dinamici in C++.

Utilizza il nuovo operatore ():

Il nuovo operatore fornisce dinamicamente l'oggetto sulla memoria principale e ripristina un puntatore ad esso. Un array di caratteri viene dichiarato in questo programma successivo. Dopo quello, in a per loop, Assegniamo in modo efficiente l'array Char e specifichiamo i dati appropriati ai suoi componenti.

#includere
Utilizzo dello spazio dei nomi std;
int main ()

int i, a;
cout<< "Enter the number of values:" a;
int *arr = new int (a);
cout<< "Enter " << a << " values" <per (i = 0; i> arr [i];

cout<< "You entered: ";
per (i = 0; i< a; i++)

cout<
restituzione 0;

Qui, integreremo il file di intestazione per utilizzare le sue funzionalità. Per utilizzare le classi nel programma senza dichiararlo, abbiamo usato uno spazio dei nomi standard. La funzione principale () viene chiamata nel prossimo passaggio.

Innanzitutto, dichiariamo due variabili "io" e "a". Utilizziamo l'istruzione "cout" per stampare la riga sullo schermo in modo che l'utente inserisca la quantità di numeri che desidera acquisire. Quindi, questo valore viene assegnato alla variabile 'A'. Ora acquisiamo un array che contiene il valore di una variabile "una" e quindi lo assegniamo a un puntatore dell'array. Ancora una volta viene utilizzato il comando "cout" per consentire all'utente di immettere eventuali numeri casuali.

Viene eseguito il ciclo che inizializza una variabile loop 'i' per ricapitolare i numeri immessi dall'utente. I numeri all'interno dell'array "arr" sono ora visualizzati. Durante l'esecuzione riuscita, il programma restituirà il valore. Il corpo della funzione principale () è finita.

Utilizzare un elenco di inizializzatori:

È semplice impostare un array di caratteri dinamici su 0. La lunghezza indica il numero di elementi da inserire nell'array in questa metodologia. L'array rimarrà vuoto perché dobbiamo specificare l'array di caratteri a zero. Un elenco di inizializzatori verrebbe utilizzato per creare un array di caratteri dinamici. Dai un'occhiata a un esempio.

#includere
Utilizzo dello spazio dei nomi std;
int main (vuoto)

int j;
int *array new int [8] 1, 14, 9, 0, 33, 5, 28, 6;
cout<< "Elements of the array: " <per (j = 0; j < 8; j++)

cout<< array[j] <
restituzione 0;

Innanzitutto, includiamo il file di intestazione per le funzioni di input e output. Lo spazio dei nomi standard è anche utilizzato in modo da poter accedere alle classi senza doverlo chiamarlo. Impieghiamo la funzione principale (). All'interno del corpo di questa funzione, la variabile 'J' viene inizializzata. Quindi, dichiariamo un array con un elenco. Il tipo di dati di questo array è un numero intero. L'array contiene 8 numerici numerici. Vogliamo stampare la linea "Elements of the Array" sullo schermo in modo da utilizzare la dichiarazione "cout". Il comando 'endl' mostra la fine della riga. Sposta solo l'output sulla riga successiva.

Applichiamo il ciclo "per". All'interno del ciclo "per" inizializziamo semplicemente una variabile loop "j" quindi specifichiamo la condizione che il valore della variabile "j" deve essere inferiore a 8. Nell'ultima parte, aumentiamo il valore del loop. Per visualizzare gli elementi dell'array definito sullo schermo, viene utilizzata l'istruzione "cout". Al di fuori del ciclo "per" inseriamo il comando "return 0" per porre fine al programma.

Utilizza il metodo std :: univoco_ptr:

Il puntatore STD :: Unive. L'elemento a cui i punti di funzione univoci_ptr devono essere posseduti dall'operazione; Ma, se il puntatore esce dall'intervallo, l'elemento viene scartato. A differenza dei puntatori convenzionali, il puntatore intelligente non richiede un programmatore per eseguire l'operatore di eliminazione; Piuttosto, si chiama implicitamente ogni volta che l'elemento viene eliminato.

#includere
#includere
usando std :: cout;
usando std :: endl;
costexpr int s = 11;
statico const char chars [] =
'Informazione' ;
int main ()

std :: univers_ptrarr (new char [s]);
per (int k = 0; k < s; ++k)

arr [k] = chars [k];
cout<
cout<restituire exit_success;

All'inizio del programma, introduciamo due librerie richieste: e . Per utilizzare le funzioni di output, utilizziamo 'cout' standard. Insieme a questo, abbiamo usato 'endl' che mostra la fine della linea. Sposta il cursore sulla linea successiva. La dimensione dell'array è qui specificata utilizzando un tipo di dati interi.

Nel passaggio successivo, dichiariamo l'array di caratteri costanti statici per definire i suoi elementi. Invochiamo la funzione principale (). E per l'allocazione della memoria, applichiamo std :: unico_ptr all'interno del corpo della funzione. Costruiamo una variabile ad anello "k" all'interno per loop per superare i valori dell'array definito. Quindi, recupera i valori definiti dell'array e memorizzali nella variabile "arr". Per visualizzare i caratteri contenuti nell'istruzione "arr" "cout". Per realizzare, il codice può restituire il valore. Nell'ultimo passaggio, utilizziamo "return exit_success" per terminare il codice.

Conclusione:

In questo articolo, abbiamo parlato dell'array di caratteri dinamici e delle diverse metodologie di allocazione degli array di caratteri in C++. Queste tecniche includono l'uso di un nuovo operatore (), elenco di inizializzatori e metodo univoco di std ::. Utilizziamo un array dinamico quando dobbiamo determinare la dimensione dell'array di caratteri in fase di esecuzione. La lunghezza di un array di caratteri dinamico è determinata al momento dell'allocazione.