Cos'è la funzione calloc() in C++?

Cos E La Funzione Calloc In C



Comprendere i vari tipi di funzioni di allocazione della memoria è fondamentale quando si lavora in C++. IL calloc() è una di queste funzioni che viene frequentemente utilizzata in C++ per allocare dinamicamente la memoria. Sebbene il suo utilizzo possa sembrare semplice, ci sono alcuni aspetti significativi da tenere a mente durante l'utilizzo calloc() .

In questo articolo, esamineremo il calloc() funzione e come può essere utilizzata con successo in C++.

Cos'è la funzione calloc()?

IL funzione calloc() è una funzione di allocazione della memoria nella programmazione C++. Viene utilizzato per allocare un blocco di memoria per un array o un insieme di variabili. IL calloc() la funzione è come il malloc() funzione, tranne per il fatto che inizialmente imposta anche la memoria allocata su zero. Ciò garantisce che la memoria allocata venga inizializzata su un valore noto, utile quando si lavora con matrici e strutture.







La sintassi per il funzione calloc() è come segue:



vuoto * calloc ( taglia_t nmemb , taglia_t misurare )

La funzione accetta due argomenti: nmemb E misurare . IL nmemb argomento specifica il numero di elementi nell'array allocato, mentre il misurare argomento specifica la dimensione di ciascun elemento in byte.



Inoltre, se l'allocazione della memoria ha esito positivo, il calloc() La funzione restituisce un puntatore nullo, altrimenti restituisce un puntatore all'inizio del blocco di memoria appena formato. Per evitare perdite di memoria, la memoria allocata da calloc() dovrebbe essere rimosso usando il gratuito() metodo una volta che non è più necessario.





Come utilizzare la funzione calloc() in C++?

Usare calloc() funzione in C++, seguire i passaggi indicati di seguito:

Passo 1: Includere il file di intestazione necessario per calloc() funzione, che è .



Passo 2: Quindi dichiarare una variabile puntatore del tipo di dati desiderato.

Passaggio 3: Dopodiché usa il calloc() funzione per allocare memoria e inizializzarla a 0.

Passaggio 4: Utilizzare la memoria allocata come richiesto.

Passaggio 5: Una volta che hai finito di usare la memoria allocata, liberala usando il file gratuito() funzione.

L'esempio seguente mostra il calloc() implementazione di funzioni in C++.

#include

#include

utilizzando lo spazio dei nomi std ;

int principale ( ) {

int * ptr ;

ptr = ( int * ) calloc ( 6 , taglia di ( int ) ) ;

Se ( ! ptr ) {

cout << 'Assegnazione della memoria fallita' ;

Uscita ( 1 ) ;

}

cout << 'Inizializzazione dei valori...' << finel

<< finel ;

per ( int io = 0 ; io < 6 ; io ++ ) {

ptr [ io ] = io * 3 ;

}

cout << 'Valori inizializzati.' << finel ;

per ( int io = 0 ; io < 6 ; io ++ ) {

cout << * ( ptr + io ) << finel ;

}

gratuito ( ptr ) ;

ritorno 0 ;

}

Nel codice precedente, un puntatore a numero intero ptr viene dichiarato per primo. La memoria viene quindi allocata per 6 numeri interi utilizzando calloc(), con la memoria che viene inizializzata con 0. Il dimensionedi(int) La funzione viene utilizzata per calcolare la quantità di memoria necessaria per memorizzare numeri interi. L'allocazione di memoria viene quindi controllata per verificare la presenza di errori per garantire il successo. In caso contrario, il programma termina e viene visualizzato un messaggio di errore.

La memoria allocata viene quindi inizializzata utilizzando i numeri ottenuti moltiplicando 'io*3' usare un per ciclo continuo. I valori conservati nella memoria allocata vengono stampati utilizzando un secondo ciclo for e l'aritmetica del puntatore con *(pt + i) . Infine, la memoria che è stata allocata dinamicamente viene rilasciata chiamando il metodo gratuito() funzione, che interrompe le perdite di memoria. Come segno che il programma è stato eseguito correttamente, restituisce 0.

Produzione

Conclusione

In C++, il calloc() La funzione è utile per l'allocazione dinamica della memoria. Non solo alloca memoria, ma la azzera anche, il che è utile quando si lavora con array e strutture. Capire come utilizzare calloc() in modo efficace è fondamentale per evitare perdite di memoria e garantire il successo dell'esecuzione del programma. Gli sviluppatori possono utilizzare in modo sicuro il calloc() method nei loro programmi C++ seguendo le istruzioni fornite in questo articolo.