? I dataprogrammering, er en variabel en navngitt minneområde som en programmerer kan bruke til å representere data i stedet for å legge inn data direkte inn i et program . Omfanget av en variabel er den region av programmet kildekoden innen hvilken det representerer visse data. De fleste programmeringsspråk støtter både lokale og globale variabler , men noen viktige forskjeller mellom de to typene. Lokale variabler
Lokale variabler bare eksisterer i funksjonen - en navngitt del av programkoden som utfører en bestemt oppgave - de er definert , eller erklært . De opphøre å eksistere når funksjonen er fullført. Lokale variabler er gjenskapt hver gang funksjonen kalles , eller henrettet . Disse variablene er ikke tilgjengelig for andre funksjoner eller til hovedprogrammet , og som sådan , de er vanligvis implementert ved hjelp av en spesiell type datastruktur , kjent som en stabel.
Stack
i mange programmeringsspråk , er " stack" et sentralt element i gjennomføringen av lokale variabler . Før du utfører en funksjon , legger et program alle lokale variabler deklarert i den funksjonen til stabelen , i motsatt rekkefølge som de ble erklært . Når programmet kaller funksjonen , er de lokale variabler fjernet fra bunken i omvendt rekkefølge, slik at de mest nylig lagt variabel er det første fjernet.
Globale variabler
Globale variabler deklareres i hoveddelen av programmet kildekoden , utenfor alle funksjoner , og at de derfor eksistere hvor som helst i koden , selv inne funksjoner. Globale variabler er ikke gjenskapes hver gang en bestemt funksjon kalles. Programmer vanligvis bruke globale variabler til å lagre data som behandles av mange forskjellige funksjoner. En enkel tekst - redigering program , for eksempel kan laste inn innholdet av filen det arbeider med til en global variabel .
Fordeler og ulemper
Lokale variabler gjøre dataprogrammer lettere å feilsøke og vedlikeholde. Programmerere kan fastslå det nøyaktige punkt hvor et program endrer verdien av en lokal variabel , mens globale variable kan modifiseres noe sted i kildekoden . Lokale variabler også produsere færre uventede interaksjoner med å kalle funksjoner eller omverdenen , kjent som bivirkninger , enn globale variabler . Globale variabler er tilgjengelige i funksjoner der de ikke brukes , motsier begrepet modulær programmering , der programkode består av små, isolerte blokker eller moduler , slik at programmerere som favoriserer den modulære strukturen sjelden bruker dem .