Dator
 |  Startsida |  Hårdvara |  Nätverk |  Programmering |  Programvara |  Felsökning |  System |   
Programmering
  • C /C + + -programmering
  • Computer Programspråk
  • Delphi Programmering
  • Java Programming
  • JavaScript programmering
  • PHP /MySQL Programmering
  • perl Programmering
  • python Programming
  • Ruby programmering
  • Visual Basics Programmering
  • * Dator Kunskap >> Programmering >> C /C + + -programmering >> Content

    Skillnaderna i Malloc och calloc

    malloc och calloc är två minne ledningsfunktioner i " C " programmeringsspråk . Program behöver inte reservera områden för minne , eftersom det i regel sköts av operativsystemet . Dessa två funktioner är inte ofta används och behövs endast för de program som inte kan förlita sig på standardiserade processer minneshantering . " C " Programming Language

    " C " har länge varit en gynnad språk för nätverk programmering och filhantering . Det är ett svårt språk att lära sig , eftersom dess nyckelord är mycket mer kodade och mindre som riktiga språk än andra språk som COBOL , Pascal eller Java . " C " är nära knutet till operativsystemet Unix . I själva verket är Unix skrivna i " C. " Även Unix har sitt eget skriptspråk, "C" är den förhärskande språk för programmering av Unix -baserade tjänster. Som minnesallokering är nära relaterat till operativsystem , malloc och calloc är mer sannolikt att finna i låg nivå tjänster programmerats in " C " än i klient inför hög nivå applikationer .
    Memory Management

    A " C " -programmet är en lista över läsbara instruktioner som inte kan köras på en dator . Programmet måste kompileras , vilket genererar en kopia av programmet i maskinläsbar kod . Operativsystem fördela brukar minnesplatser på variablerna och anvisningar i programmet vid den tidpunkt programmet kompileras . Variabler är ett temporärt lagringsutrymme för data under loppet av programexekveringen . Malloc och calloc tillhandahålla en metod för att fördröja tilldelning av minnesadresser tills programmet körs . Detta kallas dynamisk minneshantering . Både malloc och calloc allokera en plats i heap minne till programmet Addera ditt Malloc och calloc

    . Varje funktion returnerar en pekare till den första allokerade minnet adress och alla andra minnesblock bör vara sammanhängande . Om systemet inte har minne tillgängligt , båda funktionerna returnera null . Båda funktionerna reservera minne för antingen heltal eller data karaktär . I varje fall bör minnesblocket storlek vara en multipel av den storlek som krävs för den datatypen . Därför är det vanligt att använda sizeof ( ) funktionen i parameterlistan för både malloc och calloc för blockstorlek argumentet att säkerställa att den begärda minne storlek är en multipel av den avsedda datatypen .

    Jämförelse

    Malloc tar ett argument och tilldelar ett kvarter av den begärda storleken . Calloc tar två argument , som är det antal som krävs block och önskad storlek för varje block . Av denna anledning är malloc bedöms vara användbar för en enda variabel , och calloc är bättre lämpad för allokering av minne för en array - som innehåller flera element. Malloc initieras inte den begärda minne området , medan calloc noll fyller det .

    Tidigare:

    nästa:
    relaterade artiklar
    ·Hur Design N - Differentierad Data Access lager med Dat…
    ·Lägga Två stora heltal i C + +
    ·Hur läsa data i Xcode
    ·Hur man testar för Mobile Automation
    ·Hur man läser SQL från Visual C
    ·Hur man skriver en Input ström till ett uttag Stream
    ·Hur får tangenttryckningar i C + +
    ·Hur du returnerar en pekare till en Vector
    ·Lägga till inflödet av Visual C
    ·Hur Pass Mall structs funktioner i C
    Utvalda artiklarna
    ·Hur man använder VBScript Plats Object
    ·Hur man gör en sorterbar ListBox
    ·Hur man kompilerar och köra i Python
    ·Hur till Fart upp Apache Passenger Rails
    ·Hur konvertera Visual Basic 6
    ·Hur Ladda ner Java 1.6
    ·Hur att bygga en kärna för en Android
    ·Hur man gör en IMG länk
    ·Hur man använder API i Visual Basic
    ·Hur du gör din egen HTML 5 Spel
    Copyright © Dator Kunskap http://www.dator.xyz