Sunteți pe pagina 1din 1

Variabile globale.

Variabile locale

Diferenta dintre cele 2 categorii de variabile o face analizand urmatoarele caracteristici:

1. Pozitia declaratiei vaariabilei


2. Clasa de memorie ( zona de memorie in care este alocata )
3. Durata de viata ( timpul in care variabila are alocata memorie )
4. Domeniul de vizibilitate ( zona de program in care variabila poate fi utilizata )

I. Variabilele globale
1. Pozitie: sunt declarate in exteriorul functiilor ( de obicei la inceputul programului )
2. Clasa de memorie: li se aloca spatiu in segmental de date ( ele se initializeaza automat cu
valori nule )
3. Durata de viata: memoria ramane alocata pe toata durata executiei programului
4. Domeniul de vizibilitrate: sunt vizibile din locul declararii pana la sfarsitul programului, in
toate modulele acestuia cu exceptia situatiilor de omonimie

II. Variabilele locale


1. Pozitie: sunt declarate in blocul unei instructiuni compuse
2. Clasa de memorie: li se aloca spatiu de memorie pe stiva ( aceste variabile nu primesc valori
initiale = au valori reziduale )
3. Durata de viata: memoria ramane alocata pana la sfarsitul blocului in care este declarata
4. Domeniul de vizibilitate: sunt vizibile numai in blocul in care sunt declarate

Regula de omonimie = este permis sa declaram o variabila locala care sa aiba acelasi nume cu al unei
variabile globale. In acest caz, in interiorul blocului in care sunt declarate variabilele locale au
prioritate fata de variabilele globale cu acelasi nume.

Observatie: Parametrii formali ai unei functii au caracteeristicele variabilelor locale.

S-ar putea să vă placă și