Hvordan opbevares variabler?
Hvordan opbevares variabler?

Video: Hvordan opbevares variabler?

Video: Hvordan opbevares variabler?
Video: Computer Basics 19: How Variables work in Code 2024, Kan
Anonim

Variabler er normalt gemt i RAM. selv følger normalt reglerne ovenfor (en pointer, der er erklæret i en funktion er gemt på stakken), men de data, den peger på (selve hukommelsesblokken eller det objekt, du har oprettet med ny) er gemt på dyngen.

På samme måde kan man spørge, hvor variabler er lagret?

Alle globale og statiske variabler gemmes i datasegmentet, mens konstanter gemmes i kodesegmentet. Globale variabler kan være et par steder, afhængigt af hvordan de er sat op - til eksempel , kan const globals være i en skrivebeskyttet sektion af den eksekverbare.

På samme måde, hvordan lagres variabler i Java? Alle genstande i Java er gemt på dyngen. Det " variabler ", der har referencer til dem, kan være på stakken, eller de kan være indeholdt i andre objekter (så er de ikke rigtig variabler , men marker), hvilket også sætter dem på dyngen. Heap-sektionen indeholder objekter (kan også indeholde reference variabler ).

Spørgsmålet er også, hvordan lagres variabler i hukommelsen?

Det hukommelse slot til en variabel er gemt på enten stakken eller dyngen. Det afhænger af den sammenhæng, hvori det er erklæret: Hver lokal variabel (dvs. en erklæret i en metode) er gemt på stakken. Hver statisk variabel er gemt på heapen, uanset om den er deklareret inden for en referencetype eller en værditype.

Hvordan gemmes lokale variabler på stakken?

Lagring af lokale variabler på en stak er en implementeringsdetalje – dybest set en optimering. Du kan tænke på det på denne måde. Når du går ind i en funktion, plads til alle lokale variabler er tildelt et sted. Dette er i modsætning til variabler tildelt på bunken, hvis adresser er dem selv gemt i andre variabler.

Anbefalede: