Statističke promenljive

Promenljive koje postoje i kada se izvrši funkcija nazivaju se statističke.

Kao i automatske i statističke promenljive su lokalne u funkcii u kojoj su deklarisane, razlika je u tome što statističke promenljive ne isčezavaju kada funkcija koja ih sadrži prekine izvršavanje. Kompajler čuva njihove vrednosti od poziva do poziva.

Deklaracija statističkih promenljivih

{

static int a=1;

static int b=2;

float c=0.0;

}

Razmislite! Dali su sve promenljive statističke?

Pr.

#include<stdio.h>
static int a=1;
static int b=2;
float c=0.0;
int uvecaj()
{
static int x=0;
x++ ;
printf(„%d\n“,x);
return(x);
}
main()
{
uvecaj();
uvecaj();
uvecaj();
return 0;
}
Nakon izvršavanja programa ispisuje se ,1, 2, 3

U programu se funkcija uvecaj() poziva tri puta. U njoj se statistička promenljiva x, kojoj je dodeljena inicijalna vrednost 0, samo jedanput  inicijalizira, kasnije promenljivoj  x se dodeljuje vrenost sačuvana nakon poziva funkcije.

Inicijalizacija promenljive se realizuje tokom kompajliranj, to znači da kompajler rezerviše prostor u memoriji za statističku promenljivu i tamu smešta inicijalnu vrednost. Kada program započne sa izvršavamjem, promenljiva vec ima vrenost.

 

Ako nije predviđena inicijalna vrednost za promenljivu, kompajler sam dodeljuje i to za promenljivu tip int-0, chr-.

Ostavite odgovor

Popunite detalje ispod ili pritisnite na ikonicu da biste se prijavili:

WordPress.com logo

Komentarišet koristeći svoj WordPress.com nalog. Odjavite se /  Promeni )

Google photo

Komentarišet koristeći svoj Google nalog. Odjavite se /  Promeni )

Slika na Tviteru

Komentarišet koristeći svoj Twitter nalog. Odjavite se /  Promeni )

Fejsbukova fotografija

Komentarišet koristeći svoj Facebook nalog. Odjavite se /  Promeni )

Povezivanje sa %s