C ++ calloc () - C ++ - vakiokirjasto

C ++: n calloc () -funktio allokoi muistilohkon objektijoukolle ja alustaa kaikki bittinsä nollaan.

Calloc () -toiminto palauttaa osoittimen varatun muistilohkon ensimmäiseen tavuun, jos allokointi onnistuu.

Jos koko on nolla, palautettu arvo riippuu kirjaston toteutuksesta. Se voi olla nollaosoitin tai ei.

calloc () prototyyppi

 void * calloc (koko_t numero, koko_t koko);

Toiminto määritetään otsikkotiedostossa.

calloc () -parametrit

  • num: allekirjoittamaton integraaliarvo, joka edustaa elementtien lukumäärää.
  • koko: allekirjoittamaton integraaliarvo, joka edustaa muistilohkoa tavuina.

calloc () Palautusarvo

Calloc () -funktio palauttaa:

  • osoitin toiminnon varaaman muistilohkon alkuun.
  • nollaosoitin, jos allokointi epäonnistuu.

Esimerkki 1: Kuinka calloc () -toiminto toimii?

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

Kun suoritat ohjelmaa, tulos on:

 Alustetaan arvoja … Alustetaan arvot 1 3 5 7 9 

Esimerkki 2: calloc () -funktio, jonka koko on nolla

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

Kun suoritat ohjelmaa, tulos on:

 Osoite = 0x371530

Mielenkiintoisia artikkeleita...