C ++ malloc () - Biblioteca standard C ++

Funcția malloc () din C ++ alocă un bloc de memorie neinițializată și returnează un pointer gol la primul octet al blocului de memorie alocat dacă alocarea reușește.

Funcția malloc () din C ++ alocă un bloc de memorie neinițializată și returnează un pointer gol la primul octet al blocului de memorie alocat dacă alocarea reușește.

Dacă dimensiunea este zero, valoarea returnată depinde de implementarea bibliotecii. Poate fi sau nu un indicator nul.

malloc () prototip

 void * malloc (size_t size);

Această funcție este definită în fișierul antet.

malloc () Parametri

  • size: O valoare integrală nesemnată care reprezintă blocul de memorie în octeți.

malloc () Valoare returnată

Funcția malloc () returnează:

  • un indicator către blocul de memorie neinițializat alocat de funcție.
  • indicator nul dacă alocarea eșuează.

Exemplul 1: Cum funcționează funcția 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; )

Când rulați programul, ieșirea va fi:

 Initializarea valorilor … Valorile initializate 1 3 5 7 9

Exemplul 2: funcția malloc () cu dimensiunea zero

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

Când rulați programul, ieșirea va fi:

 Adresă = 0x371530

Articole interesante...