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

Funkcija malloc () v C ++ dodeli blok neinicializiranega pomnilnika in vrne kazalec praznine na prvi bajt dodeljenega pomnilniškega bloka, če dodelitev uspe.

Funkcija malloc () v C ++ dodeli blok neinicializiranega pomnilnika in vrne kazalec praznine na prvi bajt dodeljenega pomnilniškega bloka, če dodelitev uspe.

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

prototip malloc ()

 void * malloc (velikost_t velikost);

Ta funkcija je definirana v datoteki glave.

parametri malloc ()

  • velikost: Nepodpisana integralna vrednost, ki predstavlja pomnilniški blok v bajtih.

malloc () Vrnjena vrednost

Funkcija malloc () vrne:

  • kazalec na neinicializirani pomnilniški blok, ki ga dodeli funkcija.
  • ničelni kazalec, če dodelitev ne uspe.

Primer 1: Kako deluje funkcija malloc ()?

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

Ko zaženete program, bo rezultat:

 Inicializacijske vrednosti… Inicializirane vrednosti 1 3 5 7 9

Primer 2: funkcija malloc () z velikostjo nič

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

Ko zaženete program, bo rezultat:

 Naslov = 0x371530

Zanimive Članki...