Malloc mot Calloc

Författare: Laura McKinney
Skapelsedatum: 4 April 2021
Uppdatera Datum: 5 Maj 2024
Anonim
Информатика. Язык Си: Системные вызовы malloc() и free() в Си. Центр онлайн-обучения «Фоксфорд»
Video: Информатика. Язык Си: Системные вызовы malloc() и free() в Си. Центр онлайн-обучения «Фоксфорд»

Innehåll

Den viktigaste skillnaden mellan malloc och calloc är att malloc tilldelar endast ett enda block med önskat minne medan calloc tilldelar flera block av begärt minne.


Tilldelning av minne är ett mycket viktigt begrepp inom datavetenskap, i datorprogrammering måste du skapa ett minne för din kod. Malloc och calloc behöver argument för att fungera. Malloc behöver bara ett argument medan calloc behöver två argument. Malloc och calloc används för C-programmering, och de används för minnesallokering och avdelning. Dynamisk minnesallokering är ett viktigaste koncept inom datorprogrammering. Du måste tilldela minne i datorn innan du skriver ett program, det minnet används för körningen.

Malloc är en funktion som används för att tilldela ett block av minne i byte. Storleken på blocket bestäms av användaren och att definiera storleken på minnesblocket är mycket viktigt innan du skriver koden. Tilldelningen av minnet ges av RAM. Så när programmet begär det RAM för allokering av minne. När du gör en begäran och den begäran accepteras än malloc-funktionen sägs vara framgångsrik och minnet tilldelas. Om malloc-funktionen inte kan tilldela minnet, returnerades NULL. Funktionen av malloc-funktion är mycket lik en calloc-funktion, eftersom båda dessa funktioner tilldelar minnesallokering. Calloc tar två argument för begäran om minne. I calloc måste vi tilldela storleken på datatypen. De två arugemnts i calloc separeras av komma.


Innehåll: Skillnad mellan Malloc och Calloc

  • Jämförelsediagram
  • malloc
  • calloc
  • Viktiga skillnader
  • Slutsats
  • Förklarande video

Jämförelsediagram

Grundmalloccalloc
Menandemalloc tilldela ett enda block med önskat minne

calloc för att tilldela flera block av önskat minne.

 

Syntax

Syntax av malloc är

tomrum * malloc (storlek_t storlek);

Syntax för calloc är

void * calloc (size_t num, size_t size);

FartMalloc är snabbare än callocCalloc är långsammare än malloc
initiering malloc () raderar inte och initialiserar det tilldelade minnet.Det tilldelade minnet initialiseras till noll med hjälp av calloc ().

malloc

Malloc är en funktion som används för att tilldela ett block av minne i byte. Storleken på blocket bestäms av användaren och att definiera storleken på minnesblocket är mycket viktigt innan du skriver koden. Tilldelningen av minnet ges av RAM. Så när programmet begär det RAM för allokering av minne. När du gör en begäran och den begäran accepteras än malloc-funktionen sägs vara framgångsrik och minnet tilldelas. Om malloc-funktion inte kan tilldela minnet returneras NULL.


calloc

Funktionen av malloc-funktion är mycket lik en calloc-funktion, eftersom båda dessa funktioner tilldelar minnesallokering. Calloc tar två argument för begäran om minne. I calloc måste vi tilldela storleken på datatypen. De två arugemnts i calloc separeras av komma.

Viktiga skillnader

  1. Malloc tilldelar endast ett enda block med önskat minne medan calloc tilldelar flera block av önskat minne.
  2. Syntax för malloc är: tomrum * malloc (storlek_t storlek); Syntax för calloc är ogiltigt * calloc (storlek_t num, storlek_t storlek).
  3. Malloc är snabbare än calloc medan Calloc är långsammare än malloc.
  4. malloc () raderar inte och initialiserar det tilldelade minnet medan det tilldelade minnet initialiseras till noll med hjälp av calloc ().

Slutsats

I den här artikeln ovan ser vi den tydliga skillnaden mellan malloc och calloc och med implementering.

Förklarande video