C ++ malloc () - C ++ standarta bibliotēka

Funkcija malloc () C ++ piešķir neinicializētas atmiņas bloku un atdod tukšu rādītāju piešķirtās atmiņas bloka pirmajam baitam, ja piešķiršana izdodas.

Funkcija malloc () C ++ piešķir neinicializētas atmiņas bloku un atdod tukšu rādītāju piešķirtās atmiņas bloka pirmajam baitam, ja piešķiršana izdodas.

Ja izmērs ir nulle, atgrieztā vērtība ir atkarīga no bibliotēkas ieviešanas. Tas var būt vai nebūt nulles rādītājs.

malloc () prototips

 void * malloc (izmērs_t izmērs);

Šī funkcija ir definēta galvenes failā.

malloc () Parametri

  • izmērs: neparakstīta neatņemama vērtība, kas attēlo atmiņas bloku baitos.

malloc () Atgriešanās vērtība

Funkcija malloc () atgriež:

  • rādītājs neinicializētam atmiņas blokam, ko piešķir funkcija.
  • nulles rādītājs, ja piešķiršana neizdodas.

1. piemērs: Kā darbojas malloc () funkcija?

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

Palaidot programmu, izeja būs:

 Inicializē vērtības … Inicializē vērtības 1 3 5 7 9

2. piemērs: malloc () funkcija ar nulli

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

Palaidot programmu, izeja būs:

 Adrese = 0x371530

Interesanti raksti...