Literál ( angl. literal ), neboli bezejmenná konstanta [1] ( angl. bezejmenná konstanta ) - záznam ve zdrojovém kódu počítačového programu , který je pevnou hodnotou [2] . Literál je také reprezentací hodnoty nějakého datového typu [2] .
Literály jsou konstanty obsažené přímo v textu programu.
Literály lze měnit pouze v textu programu během editace. Na rozdíl od proměnných [2] nelze literály během provádění programu měnit. Skutečně pojmenované konstanty se za běhu také nemění, ale v některých jazycích (například Delphi) může slovo const označovat také statické proměnné inicializované před spuštěním, které se pak mění během provádění programu.
V následujícím příkladu jsou 1 a cat literály, zatímco number a pet jsou proměnné:
int číslo = 1; string pet = "Kočka";Téměř všechny programovací jazyky umožňují použití nějakého druhu literálu pro primitivní typy . Syntaxe literálů se však může výrazně lišit.
Obvykle se rozlišují následující základní typy literálů:
Číselné literály jsou literály pro psaní čísel. Číselné literály se někdy dělí na celočíselné literály , zlomkové literály a podobně, s různou přesností reprezentace a číselnými systémy (například bitové literály v PL/I ). V programech jsou číselné literály obvykle psány v obvyklém tvaru pro číslo. V následujícím příkladu jsou 100 a 3,1415 číselné literály:
inter a = 100; plovoucí b = 3,1415; # > 3,1415Řetězcové literály jsou obvykle řetězce znaků uzavřených v uvozovkách nebo hranatých závorkách. Některé programovací jazyky rozlišují znakové literály , které obsahují jeden znak. Různé programovací jazyky umožňují různé typy uvozovek. Například v následujícím příkladu JavaScriptu jsou jeden , dva a tři řetězcové literály zapsané pomocí různých typů uvozovek:
daleko jeden = "jeden"; daleko dva = 'dva'; daleko tři = "tři";Booleovské literály , booleovské hodnoty — dva literály: true a false nebo jejich analogy — T , t , Y , y , F , f , N , n , NIL atd. Například:
bool t = true; bool f = nepravda;Referenční typ literál , adresa v paměti – obvykle číselné literály ukazující na místo v paměti.
Null-literal , Null value - speciální typ literálu, v závislosti na programovacím jazyce, odkazující na odkaz nebo typ objektu. Jediná platná hodnota tohoto typu literálů je null , nebo analog, například NIL , None , Nothing - odkaz nikam nevede nebo chybí objekt.
To = null;Regulární výrazy . V některých programovacích jazycích je regulární výraz speciálním typem literálu, který obsahuje dvě části: vyhledávací vzor a náhradu [3] . Například:
/JavaScript/gifNěkteré objektově orientované programovací jazyky (například ECMA Script verze 3) umožňují výrazy, které slouží jako maticové literály a objektové literály [3] . Například:
[1, 2, 3, 4, 5] // Inicializátor pole {x:1, y:2} // Inicializátor objektuNěkdy se anonymní funkce označují jako literály funkcí a anonymní objekty se označují jako literály objektů .