Lekcja 31
Literały, czyli stałe dosłowne w języku C++.
Wprowadzenie
W tej lekcji dowiesz się, czym w C++ są literały i do czego służą. Mimo że były one już wykorzystywane w naszych programach, nie zostały przedstawione ich wszystkie możliwości. Czas zatem nadrobić zaległości.
Czym są literały
Literały, czyli inaczej stałe dosłowne to wszelkiego rodzaju dane pojawiające się w programie. Literałów używaliśmy w programach już wielokrotnie, jednak jak do tej pory tak ich nie nazywaliśmy.
Poniżej przedstawiam bardzo prosty program, który ma Ci uświadomić, że rzeczywiście literały były już do tej pory wielokrotnie wykorzystywane:
#include <iostream>
#include <cstring>
using namespace std;
int main()
{
int ilosc=23; // literal calkowity
double wysokosc=8868.2; // literal zmiennopozycyjny
char znak='b'; // literal znakowy
string napis="Napis"; // literal napisowy
cout <<"Tekst\n"; // to tez jest literal napisowy
cout <<ilosc<<' '<<wysokosc<<' '<<znak<<' '<<napis<<endl;
cout <<"Nacisnij ENTER aby zakonczyc"<<endl;
getchar();
return 0;
}
program nr 31.1
Jak zatem widzisz, rzeczywiście literały były już wykorzystywane i nie było w tym nic trudnego.
Czas jednak poznać trochę szczegółów dotyczących literałów. Jak się domyślasz z przykładowego programu, wszystkie literały możemy podzielić na literały całkowite, zmiennopozycyjne, znakowe i napisowe. Dodatkowo istnieją jeszcze literały typu logicznego.
To co jest również charakterystyczne dla literałów to to, że podobnie jak zmienne w C++ są określonego typu, podobnie literały mają swoje ściśle określone typy. Nawet jeśli typ literału nie zostaje przez nas jawnie określony, to literał będzie domyślnego typu.
Literały całkowite
Jak stosunkowo łatwo się domyśleć, literały całkowite służą do przechowywania danych typu całkowitego, czyli inaczej liczb, które nie posiadają części ułamkowej.
Literały całkowite możemy zapisywać w notacji dziesiętnej, ósemkowej lub szesnastkowej. Jeśli chcemy użyć notacji dziesiętnej, literał zapisujemy po prostu tak jak do tego przywykliśmy.
Z kolei, aby zapisać literał całkowity w notacji ósemkowej, poprzedzamy literał cyfrą 0. W końcu, aby zapisać literał całkowity w postaci szesnastkowej, poprzedzamy go ciągiem 0x.
Warto jednak zaznaczyć, że powyższe reguły dotyczą tylko literałów. Jeśli literał przypiszemy do zmiennej, to przy wypisaniu zmiennej, jej wartość i tak będzie wypisana domyślnie w systemie dziesiętnym, co może spowodować początkowo małe nieporozumienia. Tak samo, jeśli po prostu wypiszemy literał - zostanie on wypisany według innych reguł niż je tutaj definiujemy.