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ńcuchoweprzechowywanewpamię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"
nierównoznaczne.Pierwszyoznaczaliczbęcałkowitąużywanąwzestawiezna-
kówkomputeradoreprezentacjiliteryx,adrugitablicę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ęniepodane,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ęzykaCpatrzrozdział9.