C ++ calloc () - Libreria standard C ++

La funzione calloc () in C ++ alloca un blocco di memoria per un array di oggetti e inizializza tutti i suoi bit a zero.

La funzione calloc () restituisce un puntatore al primo byte del blocco di memoria allocato se l'allocazione riesce.

Se la dimensione è zero, il valore restituito dipende dall'implementazione della libreria. Può o non può essere un puntatore nullo.

calloc () prototipo

 void * calloc (size_t num, size_t size);

La funzione è definita nel file di intestazione.

parametri calloc ()

  • num: un valore integrale senza segno che rappresenta il numero di elementi.
  • dimensione: un valore integrale senza segno che rappresenta il blocco di memoria in byte.

calloc () Restituisce il valore

La funzione calloc () restituisce:

  • un puntatore all'inizio del blocco di memoria allocato dalla funzione.
  • puntatore nullo se l'allocazione fallisce.

Esempio 1: come funziona la funzione calloc ()?

 #include #include using namespace std; int main() ( int *ptr; ptr = (int *)calloc(5, sizeof(int)); if (!ptr) ( cout << "Memory Allocation Failed"; exit(1); ) cout << "Initializing values… " << endl << endl; for (int i = 0; i < 5; i++) ( ptr(i) = i * 2 + 1; ) cout << "Initialized values" << endl; for (int i = 0; i < 5; i++) ( /* ptr(i) and *(ptr+i) can be used interchangeably */ cout << *(ptr + i) << endl; ) free(ptr); return 0; ) 

Quando esegui il programma, l'output sarà:

 Inizializzazione dei valori … Valori inizializzati 1 3 5 7 9 

Esempio 2: funzione calloc () con dimensione zero

 #include #include using namespace std; int main() ( int *ptr = (int *)calloc(0, 0); if (ptr == NULL) ( cout << "Null pointer"; ) else ( cout << "Address = " << ptr << endl; ) free(ptr); return 0; )

Quando esegui il programma, l'output sarà:

 Indirizzo = 0x371530

Articoli interessanti...