C ++ calloc () - štandardná knižnica C ++

Funkcia calloc () v C ++ alokuje blok pamäte pre pole objektov a inicializuje všetky jeho bity na nulu.

Funkcia calloc () vráti ukazovateľ na prvý bajt bloku alokovanej pamäte, ak je alokácia úspešná.

Ak je veľkosť nulová, vrátená hodnota závisí od implementácie knižnice. Môže, ale nemusí to byť nulový ukazovateľ.

prototyp calloc ()

 void * calloc (veľkosť_t počet, veľkosť_t veľkosť);

Funkcia je definovaná v hlavičkovom súbore.

parametre calloc ()

  • num: Nepodpísaná integrálna hodnota, ktorá predstavuje počet prvkov.
  • size: Nepodpísaná integrálna hodnota, ktorá predstavuje blok pamäte v bajtoch.

calloc () Vrátená hodnota

Vráti funkcia calloc ():

  • ukazovateľ na začiatok bloku pamäte pridelený funkciou.
  • nulový ukazovateľ, ak alokácia zlyhá.

Príklad 1: Ako funguje funkcia 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; ) 

Po spustení programu bude výstup:

 Inicializujú sa hodnoty … Inicializujú sa hodnoty 1 3 5 7 9 

Príklad 2: funkcia calloc () s veľkosťou nula

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

Po spustení programu bude výstup:

 Adresa = 0x371530

Zaujímavé články...