|  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 >> Java Programming >> Content

    Vad är skillnaden mellan stack och heap?

    Stacken och heapen är två olika minnesområden som används i datorprogram.

    Stacken

    - Stacken är en avgränsad mängd minne som används för att lagra lokala variabler, funktionsparametrar och returadresserna för funktionsanrop.

    - Det kallas för en "stack" eftersom det sista föremålet som läggs till stapeln är det första föremålet som tas bort.

    - Stacken allokeras automatiskt när en funktion anropas, och den avallokeras när funktionen kommer tillbaka.

    Högen

    - Högen är en dynamiskt allokerad minnesområde som kan användas för att lagra alla typer av data.

    – Det växer och krymper efter behov, beroende på mängden minne som efterfrågas av programmet.

    - Högen kan nås med hjälp av pekare.

    Skillnad

    - Den största skillnaden mellan stacken och heapen är att stacken allokeras och avallokeras automatiskt av kompilatorn, medan heapen måste allokeras och avallokeras manuellt av programmeraren.

    Här är en tabell som sammanfattar skillnaderna mellan stacken och högen:

    | Funktion | Stack | Hög |

    |--------|-------|------|

    | Tilldelning | Automatiskt | Manuellt |

    | Deallokering | Automatiskt | Manuellt |

    | Storlek | Begränsad | Dynamisk |

    | Tillgång | Pekare | Pekare |

    | Syfte | Lokala variabler, funktionsparametrar, returadresser | Alla typer av data |

    Tidigare:

    nästa:
    relaterade artiklar
    ·Hur man installerar ett Spårningsskript med Java
    ·Vad skapade jhsmith?
    ·The Round metod i Java
    ·Överbelastning Metoder i Java
    ·Hur man bygger en väg i Eclipse Java
    ·Vad är NetBeans Development
    ·Vad är Java Används för på en dator
    ·Hur man gör ett GUI i Java
    ·Hur att måla ett problem på Java
    ·Hur vill kolla om en sträng innehåller bara alfabetet…
    Utvalda artiklarna
    ·Hur man skriver och konvertera pund mot Uns i Computer …
    ·Hur man skapar en textfil för MySQL
    ·Hur man kan utveckla Deployable Windows Mobile Applicat…
    ·Hur man använder Strerror funktion i C + +
    ·Hur till Omvänd element i en array i C
    ·Python Åsidosätt basklassmetoden
    ·Hur du kontrollerar om Null Om en XML Node Finns i VB
    ·Hur köra Python Bytekod
    ·Hur man gör en fil Card Game i C + +
    ·Vilka typer av server-side språk är för JSP
    Copyright © Dator Kunskap https://www.dator.xyz