Treść książki

Przejdź do opcji czytnikaPrzejdź do nawigacjiPrzejdź do informacjiPrzejdź do stopki
Rozdział3
Zmienneiichnazwy
Zmiennatonazwanyobszarpamięci,wktórymprogramistamożeumieszczaćdane.
WjęzykuCwszystkiezmiennemusząbyćzadeklarowaneprzedpierwszymich
użyciem.Inaczejmówiąc,kompilatormusipoznaćtypzmiennej,zanimbędzieona
używanalubzanimzostaniejejprzyznanyobszarpamięci1.
Deklaracjazmiennej(odłacińskiegoclarusjasny,zrozumiały)składasię
znazwytypuilistyidentyfikatorów,np:
intx,y;
floattab[100];
charnazwa;
Deklaracjezmiennychumieszczasięzwyklenapoczątkuplikulubnapoczątku
funkcji.
Definicjązmiennej(odłacińskiegofiniskoniec,granica)nazywamymiejsce
programu,wktórymzmiennejzostajeprzydzielonyobszarpamięci.Inaczejmó-
wiąc,wokółzmiennejwpamięcizostajewytyczonagranica,zależnaodobjętości
danejzmiennej.Bardzoczęstodeklaracjajesttakżedefinicjązmiennejtakjak
wpowyższychtrzechprzykładach.Jednakżeponiższyzapis:
externinttemperatura;
jestjedyniedeklaracjąkompilatorzostajepoinformowanyotypiezmiennej
temperaturaorazotym,żemiejscewpamięcinazmiennązostałojużbądź
będziewkrótcezarezerwowane,np.podczaskompilacjiinnegopliku.Rozróżnienie
pomiędzydefinicjąadeklaracjązmiennychstajesięszczególnieważnewprzypadku
klasjęzykaC++(częśćIIksiążki).
Wmomencieswojegodefiniowaniazmiennamożebyćtakżezainicjalizowana,
czylimożebyćjejnadanawartość.Jeśliponazwiezmiennejwystąpiznakrówności
iwyrażenie,zmiennejzostanieprzypisanawartośćtegowyrażenia:
charesc1\\;
intkoniec1MAXCHAR+1;
1Czasamiinformacjaposiadanaprzezkompilatorniemusibyćkompletna,np.wystarczyin-
formacja,żedanazmiennareprezentujestrukturę,bezpodaniaszczegółówtejstruktury.