Treść książki
Przejdź do opcji czytnikaPrzejdź do nawigacjiPrzejdź do informacjiPrzejdź do stopki
30
ROZDZIAŁ2.STAŁE
Stałełańcuchowemogąbyćzesobąłączone3,azatemponiższyzapisjestrów-
noważnypierwszemuzpowyższych:
"Hello,"
"world!"
cojestprzydatneprzyzapisywaniudługichłańcuchówwkilkuliniachkodu.
Należypamiętać,żestałełańcuchowesąprzechowywanewpamięcikomputera
jakotablicaznakówodługościłańcuchaplusjedenznak:kończącyłańcuchl\0l
(takzwanyNULL).Tendodatkowyznakoznaczakoniecłańcuchaznakowego.Za-
temnawetłańcuchpustyjestzapisywanywpamięcikomputerajakojedenznak.
Należytakżepamiętać,żezapisy:
’x’oraz
"x"
niesąrównoznaczne.Pierwszyoznaczaliczbęcałkowitąużywanąwzestawiezna-
kówkomputeradoreprezentacjiliteryx,adrugi—tablicęznakówzłożonązeznaku
xiznakukońcałańcuchal\0l.
2.6
Stałewyliczeniowe
Stałewyliczeniowetworząlistęliczbcałkowitych(typuint).Jeśliwartościstałych
tworzącychlistęniesąpodane,listarozpoczynasięodzera,akażdykolejnyelement
mawartośćojedenwiększąodpoprzedniego.Itak,wbardzoczęstodefiniowanej
liście:
enumboolean{NO,YES};
stałejNOodpowiadawartość0,astałejYESwartość1.
Stałezdanejlistymogąmiećtesamewartości,oilezostaniewykorzystana
możliwośćjawnegonadawaniawartościtymstałym.Ilustrujetoponiższyprzykład:
enumstany{SPOCZYNEK,POSTOJ10,ODCZYT,ZAPIS110};
WprzykładzietymobydwiestałeSPOCZYNEKiPOSTOJmająwartość0,stałaODCZYT
mawartość1,astałaZAPISwartość10.Nazwystałychwróżnychlistachniemogą
siępowtarzać.
Przewagastałychwyliczeniowychnadkonstrukcjami#definepoleganatym,
żekompilatorsprawdzapoprawnośćużytejnazwyijejprzynależnośćdozdefi-
niowanegotypu.Naprzykład,funkcjaoperującanaargumencietypustanynie
przyjmiewtomiejscestałejzinnegotypuwyliczeniowego,choćbyjejwartośćbyła
identycznazwartością,np.stałejSPOCZYNEK.
3ŁączenietojestwykonywaneprzezpreprocesorjęzykaC—patrzrozdział9.