C ++ calloc () - C ++ Standardbibliothek

Die Funktion calloc () in C ++ weist einen Speicherblock für ein Array von Objekten zu und initialisiert alle seine Bits auf Null.

Die Funktion calloc () gibt einen Zeiger auf das erste Byte des zugewiesenen Speicherblocks zurück, wenn die Zuordnung erfolgreich ist.

Wenn die Größe Null ist, hängt der zurückgegebene Wert von der Implementierung der Bibliothek ab. Es kann ein Nullzeiger sein oder nicht.

calloc () Prototyp

 void * calloc (size_t num, size_t size);

Die Funktion ist in der Header-Datei definiert.

calloc () Parameter

  • num: Ein vorzeichenloser Integralwert, der die Anzahl der Elemente darstellt.
  • Größe: Ein vorzeichenloser Integralwert, der den Speicherblock in Bytes darstellt.

calloc () Rückgabewert

Die Funktion calloc () gibt Folgendes zurück:

  • ein Zeiger auf den Anfang des von der Funktion zugewiesenen Speicherblocks.
  • Nullzeiger, wenn die Zuordnung fehlschlägt.

Beispiel 1: Wie funktioniert die Funktion 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; ) 

Wenn Sie das Programm ausführen, lautet die Ausgabe wie folgt:

 Werte initialisieren… Initialisierte Werte 1 3 5 7 9 

Beispiel 2: Funktion calloc () mit der Größe Null

 #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; )

Wenn Sie das Programm ausführen, lautet die Ausgabe wie folgt:

 Adresse = 0x371530

Interessante Beiträge...