C ++ calloc () - Standardna knjižnica C ++

Funkcija calloc () v C ++ dodeli blok pomnilnika za vrsto predmetov in inicializira vse njegove bite na nič.

Funkcija calloc () vrne kazalec na prvi bajt dodeljenega pomnilniškega bloka, če je dodelitev uspešna.

Če je velikost enaka nič, je vrnjena vrednost odvisna od izvedbe knjižnice. Lahko je ničelni kazalec ali pa tudi ne.

prototip calloc ()

 void * calloc (size_t num, size_t size);

Funkcija je definirana v glavi datoteke.

parametri calloc ()

  • num: nepodpisana integralna vrednost, ki predstavlja število elementov.
  • velikost: Nepodpisana integralna vrednost, ki predstavlja pomnilniški blok v bajtih.

calloc () Vrnjena vrednost

Funkcija calloc () vrne:

  • kazalec na začetek pomnilniškega bloka, ki ga dodeli funkcija.
  • ničelni kazalec, če dodelitev ne uspe.

Primer 1: Kako deluje funkcija 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; ) 

Ko zaženete program, bo rezultat:

 Inicializacijske vrednosti… Inicializirane vrednosti 1 3 5 7 9 

Primer 2: funkcija calloc () z velikostjo nič

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

Ko zaženete program, bo rezultat:

 Naslov = 0x371530

Zanimive Članki...