Malloc vs Calloc

Szerző: Laura McKinney
A Teremtés Dátuma: 4 Április 2021
Frissítés Dátuma: 6 Lehet 2024
Anonim
Calloc vs malloc | GeeksforGeeks
Videó: Calloc vs malloc | GeeksforGeeks

Tartalom

A legfontosabb különbség a malloc és a calloc között az, hogy a malloc csak egyetlen blokkot rendel hozzá a kért memória számára, míg a calloc több blokkot rendel hozzá a kért memória számára.


A memóriaelosztás nagyon fontos fogalom a számítástechnikában, a számítógépes programozás során memóriát kell létrehozni a kódhoz. Mallocnak és calloc-nak érvekre van szükségük a működéshez. Mallocnak csak egy érvre van szüksége, míg a kallocnak két érvre van szüksége. A Malloc-ot és a calloc-ot használják a C programozáshoz, és a memória allokációjához és a de-allokációhoz. A dinamikus memóriaelosztás a számítógépes programozás legfontosabb fogalma. Mielőtt programot írna, hozzá kell rendelnie a számítógép memóriáját, amelyet a végrehajtáshoz használnak.

A Malloc egy olyan funkció, amellyel memória blokkot rendelhet bájtokban. A blokk méretét a felhasználó határozza meg, és a kód írása előtt nagyon fontos meghatározni a memória blokk méretét. A memória elosztását a RAM adja. Tehát amikor a program kéri a RAM-ot a memória elosztására. Amikor kérést tesz, és ezt a kérést elfogadják, akkor azt mondják, hogy a malloc funkció sikeres, és a memória el van osztva. Ha a malloc funkció nem tudja hozzárendelni a memóriát, akkor a NULL visszatért. A malloc funkció működése nagyon hasonlít a calloc függvényhez, mivel mindkettő memóriaelosztást rendel hozzá. A Calloc két érvet vesz fel a memória kérésére. A calloc-ban meg kell adnunk az adattípus méretét. A kallocban szereplő két arugentumot vesszők választják el egymástól.


Tartalom: Különbség Malloc és Calloc között

  • Összehasonlító táblázat
  • malloc
  • calloc
  • Főbb különbségek
  • Következtetés
  • Magyarázó videó

Összehasonlító táblázat

bázismalloccalloc
Jelentésmalloc a kért memória csak egyetlen blokkját rendelje hozzá

calloc a kért memória több blokkjának hozzárendelésére.

 

Szintaxis

A malloc szintaxisa:

void * malloc (méret_t méret);

A kallok szintaxisa:

void * calloc (méret_szám, méret_ méret);

SebességA Malloc gyorsabb, mint a kallocA Calloc lassabb, mint a malloc
inicializálás a malloc () nem törli és inicializálja a kiosztott memóriát.A kiosztott memóriát nullára állítják a calloc () használatával.

malloc

A Malloc egy olyan funkció, amellyel memória blokkot rendelhet bájtokban. A blokk méretét a felhasználó határozza meg, és a kód írása előtt nagyon fontos meghatározni a memória blokk méretét. A memória elosztását a RAM adja. Tehát amikor a program kéri a RAM-ot a memória elosztására. Amikor kérést tesz, és ezt a kérést elfogadják, akkor azt mondják, hogy a malloc funkció sikeres, és a memória el van osztva. Ha a malloc funkció nem tudja hozzárendelni a memóriát, akkor a NULL kerül visszaadásra.


calloc

A malloc funkció működése nagyon hasonlít a calloc függvényhez, mivel mindkettő memóriaelosztást rendel hozzá. A Calloc két érvet vesz fel a memória kérésére. A kallocban hozzá kell rendelnünk az adattípus méretét. A kallocban szereplő két arugentumot vesszők választják el egymástól.

Főbb különbségek

  1. Malloc csak egyetlen blokkot rendel hozzá a kért memóriahez, míg a calloc több blokkot rendel hozzá a kért memóriahoz.
  2. A malloc szintaxisa: void * malloc (size_t méret); mivel a calloc szintaxisa érvénytelen * calloc (méret_szám, méret_ méret);
  3. A Malloc gyorsabb, mint a kalloc, míg a Calloc lassabb, mint a malloc.
  4. a malloc () nem törli és inicializálja a kiosztott memóriát, míg a kiosztott memória nullára inicializálódik a calloc () használatával.

Következtetés

A fenti cikkben egyértelmű különbséget látunk a malloc és a calloc, valamint a megvalósítás között.

Magyarázó videó