Treść książki

Przejdź do opcji czytnikaPrzejdź do nawigacjiPrzejdź do informacjiPrzejdź do stopki
20
1.6.1.
Stałeizmiennecałkowite
JęzykC++.StandardISOwpraktyce
Stałeizmiennecałkowitenależądopodzbioruliczbcałkowitych.Wyróżniasięwśród
nichstałeizmiennetypushortint,int,(np.literał12345możebyćtypushortintlubint),typu
longint(„długie”liczbycałkowite,np.123456789Ljesttypulongint)itypuunsignedint
(liczbycałkowitebezznaku,np.123ujesttypuunsignedint).Przyjętozasadę,żenazwastałej
bezprzedrostkaunsignedijejwartośćbezprzyrostkauoznaczastałązeznakiem(signed).
Możnarównieżdeklarowaćstałeizmienneósemkowe,którychwartościpoprzedzasięcyfrą0
(np.037)orazszesnastkowe,którychwartościpoprzedzasięznakami0Xlub0x(np.0x7F).
Wpokazanymniżejprzykładziepokazanodefinicjekilkustałychcałkowitych,anastęp-
nieinstrukcje,któredrukująichwartości.Zauważmy,żewartościstałychnazwanychwprowa-
dzasiędyrektywąpreprocesora#define,lubzużyciemkwalifikatoraconst.Zmiennaz1,którą
zadeklarowanoprzedfunkcjąmain,jesttutajzmiennąglobalną;zmiennejtejkompilatornada
wartośćpoczątkowązero.
Przykład1.4
#iΠclude<iostream.h!
iΠtz1;
coΠstiΠtcsi=12345;
#defiΠeci
32767
coΠstuΠsigΠediΠtcui=65535u;
#defiΠecli2147483647L
#defiΠeoctalcoΠst0177
coΠstiΠthe[coΠst=
0[FF;
iΠtmaiΠ(){
iΠtz1=38;
cout<<LokalΠez1=<<z1;
cout<<?ΠLiteral=<<12345;
cout<<?ΠStalacsi=<<csi;
cout<<?ΠStalaci=<<ci;
cout<<?ΠStalacui=<<cui;
cout<<?ΠStalacli=<<cli;
cout<<?ΠoctalcoΠst=<<octalcoΠst;
cout<<?Πhe[coΠst=<<he[coΠst;
cout<<?ΠoctalcoΠstwformacieoct=
<<oct<<octalcoΠst;
cout<<?Πhe[coΠstwformaciehe[=
<<he[<<he[coΠst<<eΠdl;
cout<<?ΠNacisΠijdowolΠyklawisz.;
ciΠ.get();
returΠ0;
}
Programwyświetlinaekraniemonitoranastępującenapisy:
LokalΠez1=38
Literal=12345
Stalacsi=12345
Stalaci=32767
Stalacui=65535
Stalacli=2147483647
octalcoΠst=127
he[coΠst=255
octalcoΠstwformacieoct=177
he[coΠstwformaciehe[=ff
NacisΠijdowolΠyklawisz.