Was ist die calloc()-Funktion in C++?

Was Ist Die Calloc Funktion In C



Bei der Arbeit in C++ ist es wichtig, die verschiedenen Arten von Speicherzuweisungsfunktionen zu verstehen. Der calloc() ist eine solche Funktion, die in C++ häufig zum dynamischen Zuweisen von Speicher verwendet wird. Auch wenn die Verwendung einfach erscheint, gibt es bei der Verwendung bestimmte wichtige Aspekte zu beachten calloc() .

In diesem Artikel werden wir uns mit dem befassen calloc() Funktion und wie sie erfolgreich in C++ eingesetzt werden kann.

Was ist die calloc()-Funktion?

Der calloc()-Funktion ist eine Speicherzuweisungsfunktion in der C++-Programmierung. Es wird verwendet, um einem Array oder einer Gruppe von Variablen einen Speicherblock zuzuweisen. Der calloc() Funktion ist wie die malloc() Funktion, außer dass sie auch den zugewiesenen Speicher zunächst auf Nullen setzt. Dadurch wird sichergestellt, dass der zugewiesene Speicher auf einen bekannten Wert initialisiert wird, was bei der Arbeit mit Arrays und Strukturen nützlich ist.







Die Syntax für die calloc()-Funktion ist wie folgt:



Leere * calloc ( size_t nmemb , size_t Größe )

Die Funktion benötigt zwei Argumente: nmemb Und Größe . Der nmemb Das Argument gibt die Anzahl der Elemente im Array an, die zugewiesen werden, während das Größe Das Argument gibt die Größe jedes Elements in Bytes an.



Wenn die Speicherzuweisung erfolgreich ist, wird außerdem die calloc() Die Funktion gibt einen Nullzeiger zurück, andernfalls gibt sie einen Zeiger auf den Anfang des neu gebildeten Speicherblocks zurück. Um Speicherlecks zu vermeiden, wird der von calloc() sollte mit dem entfernt werden frei() Methode, sobald sie nicht mehr benötigt wird.





Wie verwende ich die Funktion calloc() in C++?

Benutzen calloc() Um die Funktion in C++ zu verwenden, führen Sie die folgenden Schritte aus:

Schritt 1: Fügen Sie die erforderliche Header-Datei für ein calloc() Funktion, die ist .



Schritt 2: Anschließend deklarieren Sie eine Zeigervariable des gewünschten Datentyps.

Schritt 3: Danach verwenden Sie die calloc() Funktion zum Zuweisen von Speicher und Initialisieren auf 0.

Schritt 4: Nutzen Sie den zugewiesenen Speicher nach Bedarf.

Schritt 5: Sobald Sie mit der Nutzung des zugewiesenen Speichers fertig sind, geben Sie ihn mit frei frei() Funktion.

Das folgende Beispiel zeigt die calloc() Funktionsimplementierung in C++.

#include

#include

Verwenden des Namensraums std ;

int hauptsächlich ( ) {

int * ptr ;

ptr = ( int * ) calloc ( 6 , Größe von ( int ) ) ;

Wenn ( ! ptr ) {

cout << „Speicherzuweisung fehlgeschlagen“ ;

Ausfahrt ( 1 ) ;

}

cout << „Werte werden initialisiert…“ << endl

<< endl ;

für ( int ich = 0 ; ich < 6 ; ich ++ ) {

ptr [ ich ] = ich * 3 ;

}

cout << „Initialisierte Werte.“ << endl ;

für ( int ich = 0 ; ich < 6 ; ich ++ ) {

cout << * ( ptr + ich ) << endl ;

}

frei ( ptr ) ;

zurückkehren 0 ;

}

Im obigen Code ein ganzzahliger Zeiger ptr wird zuerst deklariert. Der Speicher wird dann für 6 Ganzzahlen zugewiesen calloc(), wobei der Speicher mit 0 initialisiert wird sizeof(int) Die Funktion wird verwendet, um zu berechnen, wie viel Speicher zum Speichern von Ganzzahlen erforderlich ist. Anschließend wird die Speicherbelegung auf Fehler überprüft, um den Erfolg sicherzustellen. Wenn nicht, wird das Programm beendet und eine Fehlermeldung angezeigt.

Der zugewiesene Speicher wird dann mithilfe von durch Multiplikation erhaltenen Zahlen initialisiert „i*3“ Verwendung einer für Schleife. Die im zugewiesenen Speicher gehaltenen Werte werden mithilfe einer zweiten for-Schleife und Zeigerarithmetik mit gedruckt *(ptr + i) . Letztendlich wird der dynamisch zugewiesene Speicher durch den Aufruf freigegeben frei() Funktion, die Speicherlecks stoppt. Als Zeichen dafür, dass das Programm erfolgreich ausgeführt wurde, gibt es 0 zurück.

Ausgang

Abschluss

In C++ ist die calloc() Die Funktion ist nützlich für die dynamische Zuweisung von Speicher. Es reserviert nicht nur Speicher, sondern setzt ihn auch auf Null, was bei der Arbeit mit Arrays und Strukturen nützlich ist. Verstehen, wie man es nutzt calloc() Effektiv ist entscheidend, um Speicherlecks zu vermeiden und den Erfolg der Programmausführung sicherzustellen. Entwickler können das sicher nutzen calloc() -Methode in ihre C++-Programme integrieren, indem Sie den Anweisungen in diesem Artikel folgen.