Vad är calloc()-funktionen i C++?

Vad Ar Calloc Funktionen I C



Att förstå de olika typerna av minnesallokeringsfunktioner är avgörande när man arbetar i C++. De calloc() är en sådan funktion som ofta används i C++ för att dynamiskt allokera minne. Även om användningen kan verka enkel, finns det vissa viktiga aspekter att tänka på när du använder den calloc() .

I den här artikeln kommer vi att titta på calloc() funktion och hur den kan användas framgångsrikt i C++.

Vad är calloc()-funktionen?

De calloc() funktion är en minnesallokeringsfunktion i C++-programmering. Den används för att allokera ett minnesblock för en array eller uppsättning variabler. De calloc() funktionen är som malloc() funktion, förutom att den också sätter det tilldelade minnet till nollor initialt. Detta säkerställer att det allokerade minnet initieras till ett känt värde, vilket är användbart när man arbetar med arrayer och strukturer.







Syntaxen för calloc() funktion enligt följande:



tomhet * calloc ( storlek_t nmemb , storlek_t storlek )

Funktionen tar två argument: nmemb och storlek . De nmemb argument anger antalet element i arrayen som allokeras, medan storlek argument anger storleken på varje element i byte.



Dessutom, om minnestilldelningen lyckas, calloc() funktion returnerar en nollpekare, annars returnerar den en pekare till början av det nybildade minnesblocket. För att undvika minnesläckor, tilldelas minnet av calloc() bör tas bort med hjälp av fri() metod när den inte längre behövs.





Hur man använder calloc()-funktionen i C++?

Att använda calloc() funktion i C++, följ stegen nedan:

Steg 1: Inkludera den nödvändiga rubrikfilen för calloc() funktion, dvs .



Steg 2: Deklarera sedan en pekvariabel av önskad datatyp.

Steg 3: Använd efter det calloc() funktion för att allokera minne och initiera det till 0.

Steg 4: Använd det tilldelade minnet efter behov.

Steg 5: När du är klar med att använda det tilldelade minnet, frigör det med hjälp av fri() fungera.

Följande exempel visar calloc() funktionsimplementering i C++.

#include

#include

använder namnutrymme std ;

int huvud ( ) {

int * ptr ;

ptr = ( int * ) calloc ( 6 , storlek av ( int ) ) ;

om ( ! ptr ) {

cout << 'Minnesallokering misslyckades' ;

utgång ( 1 ) ;

}

cout << 'Initialiserar värden...' << endl

<< endl ;

för ( int i = 0 ; i < 6 ; i ++ ) {

ptr [ i ] = i * 3 ;

}

cout << 'Initialiserade värden.' << endl ;

för ( int i = 0 ; i < 6 ; i ++ ) {

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

}

fri ( ptr ) ;

lämna tillbaka 0 ;

}

I ovanstående kod, en heltalspekare ptr deklareras först. Minnet allokeras sedan för 6 heltal med användning av calloc(), med minnet initialiserat med 0. The sizeof(int) funktion används för att beräkna hur mycket minne som krävs för att lagra heltal. Minnesallokeringen kontrolleras sedan för fel för att säkerställa framgång. Om inte, avslutas programmet och ett felmeddelande visas.

Det tilldelade minnet initieras sedan med hjälp av siffror som erhålls genom att multiplicera 'i*3' använder en för slinga. Värdena som lagras i det tilldelade minnet skrivs ut med en sekund för loop och pekararitmetik med *(ptr + i) . I slutändan frigörs minnet som var dynamiskt allokerat genom att anropa fri() funktion, som stoppar minnesläckor. Som ett tecken på att programmet har körts framgångsrikt returnerar det 0.

Produktion

Slutsats

I C++ är calloc() Funktionen är användbar för att dynamiskt allokera minne. Den allokerar inte bara minne utan nollställer det också, vilket är användbart när man arbetar med arrayer och strukturer. Förstå hur man använder calloc() effektivt är avgörande för att undvika minnesläckor och för att säkerställa att programmet körs framgångsrikt. Utvecklare kan säkert använda calloc() metod i sina C++-program genom att följa instruktionerna i den här artikeln.