C ++ calloc () - C ++ standaardbibliotheek

De functie calloc () in C ++ wijst een geheugenblok toe aan een reeks objecten en initialiseert alle bits op nul.

De functie calloc () retourneert een pointer naar de eerste byte van het toegewezen geheugenblok als de toewijzing slaagt.

Als de grootte nul is, is de geretourneerde waarde afhankelijk van de implementatie van de bibliotheek. Het kan al dan niet een nulwijzer zijn.

calloc () prototype

 void * calloc (size_t num, size_t size);

De functie is gedefinieerd in het header-bestand.

calloc () Parameters

  • num: een niet-ondertekende integrale waarde die het aantal elementen vertegenwoordigt.
  • size: een niet-ondertekende integrale waarde die het geheugenblok in bytes vertegenwoordigt.

calloc () Retourwaarde

De functie calloc () retourneert:

  • een wijzer naar het begin van het geheugenblok dat door de functie is toegewezen.
  • null-aanwijzer als toewijzing mislukt.

Voorbeeld 1: Hoe werkt de functie 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; ) 

Wanneer u het programma uitvoert, is de uitvoer:

 Waarden initialiseren … Geïnitialiseerde waarden 1 3 5 7 9 

Voorbeeld 2: calloc () functie met grootte nul

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

Wanneer u het programma uitvoert, is de uitvoer:

 Adres = 0x371530

Interessante artikelen...