C ++ calloc () - C ++ Standardbibliotek

Calloc () -funktionen i C ++ allokerar ett minnesblock för en uppsättning objekt och initialiserar alla dess bitar till noll.

Funktionen calloc () returnerar en pekare till den första byten i det allokerade minnesblocket om allokeringen lyckas.

Om storleken är noll beror värdet som returneras på implementeringen av biblioteket. Det kan eller inte kan vara en nollpekare.

calloc () prototyp

 ogiltig * calloc (storlek_t num, storlek_t storlek);

Funktionen definieras i rubrikfilen.

calloc () Parametrar

  • num: Ett osignerat integralt värde som representerar antalet element.
  • storlek: Ett osignerat integrerat värde som representerar minnesblocket i byte.

calloc () Returvärde

Funktionen calloc () returnerar:

  • en pekare till början av minnesblocket som tilldelats av funktionen.
  • nullpekare om allokeringen misslyckas.

Exempel 1: Hur fungerar calloc () -funktionen?

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

När du kör programmet blir resultatet:

 Initierar värden … Initierade värden 1 3 5 7 9 

Exempel 2: funktion calloc () med storlek noll

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

När du kör programmet blir resultatet:

 Adress = 0x371530

Intressanta artiklar...