C ++ malloc () - C ++ standartinė biblioteka

Funkcija malloc () C ++ paskirsto neinicijuotos atminties bloką ir grąžina tuščią rodyklę į pirmąjį paskirtos atminties bloko baitą, jei paskirstymas pavyksta.

Funkcija malloc () C ++ paskirsto neinicijuotos atminties bloką ir grąžina tuščią rodyklę į pirmąjį paskirtos atminties bloko baitą, jei paskirstymas pavyksta.

Jei dydis yra nulis, grąžinta vertė priklauso nuo bibliotekos įdiegimo. Tai gali būti nulinis rodiklis arba ne.

malloc () prototipas

 negaliojantis * malloc (dydis_t dydis);

Ši funkcija apibrėžta antraštės faile.

malloc () parametrai

  • dydis: Nepasirašyta integralinė reikšmė, vaizduojanti atminties bloką baitais.

malloc () Grąžinimo vertė

Funkcija malloc () grąžina:

  • rodyklė į neinicijuotą atminties bloką, kurį skiria funkcija.
  • nulinis rodyklė, jei nepavyksta paskirstyti.

1 pavyzdys: Kaip veikia 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; )

Kai paleisite programą, išvestis bus:

 Inicializuojamos vertės … Inicializuojamos vertės 1 3 5 7 9

2 pavyzdys: malloc () funkcija su nuliu dydžiu

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

Kai paleisite programą, išvestis bus:

 Adresas = 0x371530

Įdomios straipsniai...