C ++ malloc () - C ++ -kirjasto

Malloc () -toiminto C ++: ssa allokoi alustamattoman muistin lohkon ja palauttaa tyhjän osoittimen varatun muistilohkon ensimmäiseen tavuun, jos allokointi onnistuu.

Malloc () -toiminto C ++: ssa allokoi alustamattoman muistin lohkon ja palauttaa tyhjän osoittimen varatun muistilohkon ensimmäiseen tavuun, jos allokointi onnistuu.

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

malloc () prototyyppi

 void * malloc (koko_t koko);

Tämä toiminto on määritelty otsikkotiedostossa.

malloc () -parametrit

  • koko: allekirjoittamaton integraaliarvo, joka edustaa muistilohkoa tavuina.

malloc () Palautusarvo

Malloc () -funktio palauttaa:

  • osoitin toiminnon varaamalle alustamattomalle muistilohkolle.
  • nollaosoitin, jos allokointi epäonnistuu.

Esimerkki 1: Kuinka malloc () -toiminto toimii?

 #include #include using namespace std; int main() ( int *ptr; ptr = (int*) malloc(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: malloc () -funktio, jonka koko on nolla

 #include #include using namespace std; int main() ( int *ptr = (int*) malloc(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...