Malloc vs Calloc

Autor: Laura McKinney
Loomise Kuupäev: 4 Aprill 2021
Värskenduse Kuupäev: 16 Mai 2024
Anonim
Calloc vs malloc | GeeksforGeeks
Videot: Calloc vs malloc | GeeksforGeeks

Sisu

Peamine erinevus malloki ja kalloki vahel on see, et malloc määrab ainult ühe taotletud mälu ploki, samas kui kalloc määrab mitu taotletud mälu plokki.


Mälu eraldamine on arvutiteaduses väga oluline mõiste, arvutiprogrammeerimisel peate oma koodi jaoks mälu looma. Malloc ja calloc vajavad töötamiseks argumente. Malloc vajab ainult ühte argumenti, samas kui kalloc vajab kahte argumenti. C programmeerimisel kasutatakse malloc ja calloc ning neid kasutatakse mälu eraldamiseks ja eraldamiseks. Dünaamiline mälujaotus on arvutiprogrammeerimisel kõige olulisem mõiste. Enne programmi kirjutamist peate määrama arvutisse mälu, mida kasutatakse täitmiseks.

Malloc on funktsioon, mida kasutatakse mäluploki määramiseks baitides. Ploki suuruse otsustab kasutaja ja mäluploki suuruse määratlemine on enne koodi kirjutamist väga oluline. Mälu jaotuse annab RAM. Nii et kui programm seda taotleb, nõuab ta mälu eraldamiseks RAM-i. Kui esitate päringu ja see taotlus aktsepteeritakse, loetakse funktsioon malloc õnnestunuks ja mälu eraldatakse. Kui funktsioon malloc ei suuda mälu määrata, naasis NULL. Malloc-funktsiooni toimimine sarnaneb väga palju calloc-funktsiooniga, kuna mõlemad need funktsioonid määravad mälujaotuse. Calloc võtab mälu taotlemiseks vastu kaks argumenti. Kallokis peame määrama andmetüübi suuruse. Kaks kalloc väärtust eraldatakse komadega.


Sisu: Malloci ja Calloci erinevus

  • Võrdlusdiagramm
  • Malloc
  • Calloc
  • Peamised erinevused
  • Järeldus
  • Selgitav video

Võrdlusdiagramm

AlusMallocCalloc
Tähendusmalloc määrab taotletud mälu ainult ühe ploki

calloc taotletud mälu mitme ploki määramiseks.

 

Süntaks

Malloki süntaks on

tühine * malloc (suurus_t suurus);

Kalloki süntaks on

void * calloc (suurus_t num, suurus_t suurus);

KiirusMalloc on kiirem kui kallocCalloc on aeglasem kui malloc
Initsialiseerimine malloc () ei tühjenda ja lähtesta eraldatud mälu.Eraldatud mälu lähtestatakse nulliga, kasutades nuppu calloc ().

Malloc

Malloc on funktsioon, mida kasutatakse mäluploki määramiseks baitides. Ploki suuruse otsustab kasutaja ja mäluploki suuruse määratlemine on enne koodi kirjutamist väga oluline. Mälu jaotuse annab RAM. Nii et kui programm seda taotleb, nõuab ta mälu eraldamiseks RAM-i. Kui esitate päringu ja see taotlus aktsepteeritakse, loetakse funktsioon malloc õnnestunuks ja mälu eraldatakse. Kui funktsioon malloc ei suuda mälu määrata, tagastatakse NULL.


Calloc

Malloc-funktsiooni toimimine sarnaneb väga palju calloc-funktsiooniga, kuna mõlemad need funktsioonid määravad mälujaotuse. Calloc võtab mälu taotlemiseks vastu kaks argumenti. Kallokis peame määrama andmetüübi suuruse. Kaks kalloc väärtust eraldatakse komadega.

Peamised erinevused

  1. Malloc määrab ainult ühe taotletud mälu ploki, samas kui kalloc määrab mitu taotletud mälu plokki.
  2. Malloci süntaks on: tühine * malloc (suurus_t suurus); arvestades, et kalloki süntaks on tühine * kallokk (suurus_num, suurus_t suurus);
  3. Malloc on kiirem kui kalloc, samal ajal kui Calloc on aeglasem kui malloc.
  4. malloc () ei tühjenda ja lähtesta eraldatud mälu, samas kui eraldatud mälu lähtestatakse nulliga, kasutades calloc ().

Järeldus

Ülaltoodud artiklis näeme selget erinevust malloki ja kalloki vahel ning rakenduse vahel.

Selgitav video