Datamaskin
  | Hjem | Hardware | Nettverk | Programmering | Software | Feilsøking | Systems | 
Programmering  
  • C /C + + Programming
  • Computer Programmeringsspråk
  • Delphi Programming
  • Java Programming
  • JavaScript Programmering
  • PHP /MySQL programmering
  • Perl Programming
  • Python Programming
  • Ruby Programming
  • Visual Basics Programming
  •  
    Datamaskin >> Programmering >> C /C + + Programming >> Content
    Forskjeller i malloc og Calloc
    malloc og calloc er to minnehåndtering funksjoner i "C" programmeringsspråk. Programmer ikke trenger å reservere deler av hukommelsen , fordi det er vanligvis ansvaret operativsystemet. Disse to funksjonene er ikke mye brukt og er bare nødvendig for de programmene som ikke kan stole på standard minne styringsprosesser. "C " Programming Language

    "C " har lenge vært et yndet språk for nettverksbygging programmering og filhåndtering . Det er et vanskelig språk å lære, fordi dens søkeord er mye mer kodet og mindre som ekte språk enn andre språk som COBOL , Pascal eller Java. "C " er nært knyttet til Unix -operativsystemet . Faktisk er Unix skrevet i " C." Selv om Unix har sitt eget skriptspråk , "C " er utbredt språk for programmering av Unix - baserte tjenester . Som minne allokering er nært knyttet til operativsystemer , malloc og calloc er mer sannsynlig å bli funnet i lave nivå tjenester programmert i " C" enn i klienten overfor høye nivå applikasjoner .
    Memory Management

    A " C "-programmet er en liste over lesbar instruksjoner som ikke kan kjøres på en datamaskin . Programmet må kompileres , som genererer en kopi av programmet i maskinlesbar kode . Operativsystemer som regel fordele minneplasser til variablene og instruksjoner i programmet på den tiden programmet er kompilert . Variablene er en midlertidig lagringsplass for data i løpet av programmet løp. Malloc og calloc gir en metode for å utsette tildeling av minneadresser til programmet kjører . Dette kalles dynamisk minnehåndtering .
    Malloc og Calloc

    Både malloc og calloc tildele en plass i heap minne til programmet. Hver funksjon returnerer en peker til den første tildelte minnet adresse og alle andre minneblokker bør være sammenhengende . Hvis systemet ikke har tilgjengelig minne , begge returnerer null . Begge funksjonene forbeholder minne for enten heltall eller tegn data . I hvert tilfelle bør den minneblokk størrelse være et multiplum av den størrelse som kreves for at datatypen . Derfor er det vanlig praksis å bruke sizeof ( )-funksjonen i parameter liste for både malloc og calloc for blokken størrelse argument for å sikre at den forespurte størrelsen på minnet er et multiplum av den tiltenkte datatype.

    Sammenligning

    malloc tar ett argument og tildeler en blokk av ønsket størrelse . Calloc tar to argumenter , som er antall blokker som kreves og ønsket størrelse for hver blokk . Av denne grunn er malloc bedømt til å være nyttige for en enkelt variabel , og calloc er bedre egnet til å tildele minne for en matrise - som inneholder flere elementer. Malloc initialiserer ikke den forespurte minneområdet , mens calloc null fyller det .

    früher :

     Weiter:
      Relatert Artike
    ·Målet med CString Metoder 
    ·Hvordan lage en Dobbelt - lenket liste i C Programming 
    ·Hvordan få Koder for Dev -C + + 4.9.9.2 
    ·Sette inn en forsinkelse på sekunder for C + + 
    ·Hvordan skrive en linje Switch Tastkombinasjon 
    ·Hvordan kompilere med en headerfil 
    ·Slik sletter du en C + + Corrupt Heap 
    ·Hvordan lage en Moving graf i C # 
    ·Spesifikasjoner av UML i C + + 
    ·Slik konverterer telefonnummer til tekst C 
      Anbefalte artikler
    ·Slik formaterer et tekstfelt for å bare akseptere Numb…
    ·Sette inn bilde innebygd i Visual Basic 
    ·Hvordan Overload Oppdraget Operatør i C 
    ·Hvordan legge til en GUI til Java-kode 
    ·Hvordan få tilgang Query Null Argument VBA 
    ·Hvordan bruke en Array i COBOL 
    ·Hvordan oppdage audionivåer Fra Produksjonen i Visual …
    ·Hvordan oppdatere en erklæring i Informix 
    ·Slik fjerner du like Lines i en variabel i Perl 
    ·Hvordan legge til et datasett til et skjema i Vb.Net 
    Copyright ©  Datamaskin  http://www.datamaskin.biz/