Literály
Literály slouží pro přímou reprezentaci hodnot proměnných.
Číselné literály
Číselný literál je definován jako desetinné číslo nebo číslo o určitém základu (např. dvojkové). Znak podtržítko „_“ vložený mezi číslicemi v číselném literálů není významné.
| Literál | Příklad |
|---|---|
| Celé číslo | -12, 0, 123_4, +986 |
| Číslo v pohyblivé řádové čárce | 0.0, 0.4560, 3.14159_26 |
| Číslo v pohyblivé řádové čárce s exponentem | -1.34E-12, -1.34e-12 |
| Dvojkové číslo | 2#1111_1111 (255 decimal) |
| Osmičkové číslo | 8#377 (255 decimal) |
| Hexadecimální číslo | 16#FF, 16#ff (255 decimal) |
| Boolovské číslo | 0, 1, FALSE, TRUE |
| S typem | INT#-123, WORD#16#AEF, BOOL#0, BOOL#FALSE |
Pozor: V jazyce FUPLA nejsou literály s formáty jiných číselných soustav, např. 16#FF, podporovány. Hodnoty je nutno zadávat v desítkové soustavě (např. 255).
Příklad:
REAL#+INF, REAL#-INF, LREAL#+INF, LREAL#-INF //literály specialních hodnot reálných čísel (+- nekonečno) REAL#NAN, LREAL#NAN //literály specialních hodnot reálných čísel (neplatné číslo)
Znakové literály
Znakové literály jsou jedno nebo dvoubajtové zakódované znaky. Jednobajtový znakový literál je posloupnost žádného nebo více znaků s předponou a ukončením pomocí znaku jednoduché uvozovky ('). Dvoubajtový znakový literál je posloupnost žádného nebo více znaků s předponou a ukončením pomocí znaku dvojité uvozovky („).
| Literál | Příklad | |
|---|---|---|
| Jednobajtové znaky | Prázdný řetězec | '' |
| Jeden znak | 'A' | |
| Řetězec s typem | STRING#'OK' | |
| Dvojbajtové znaky | Prázdný řetězec | “„ |
| Single character | „A“ | |
| Typed string | STRING#„OK“ | |
| Dvojznakové kombinace | znak dolar | $$ |
| apostrof | $' | |
| uvozovka | $“ | |
| Line feed (nový řádek, 16#0A) | $L or $I | |
| Newline (nový řádek) | $N | |
| Form feed (nová strana) | $P | |
| Carriage return (návrat vozíku, 16#0D) | $R | |
| Tabulátor (16#09) | $T |
Časové literály
Reprezentují údaj o trvání, tj. o době, která uplynula nebo má uplynout v souvislosti s nějakou událostí. Jednotky jsou dny, hodiny, minuty, sekundy, zlomky sekund a také kombinace uvedeného.
| Literál | Popis |
|---|---|
| d | Den |
| h | Hodina |
| m | Minuta |
| s | Sekunda |
| ms | Milisekunda |
| us | Mikrosekunda |
| ns | Nanosekunda |
Příklad:
T#14ms, TIME#14ms, T#-14ms, LT#14.7s, t#25h15m, TIME#5m_20s_500ms
Časové literály absolutního času
| Literál | Příklad |
|---|---|
| Datum | DATE#1984-06-25, date#1984-06-25, D#1984-06-25, d#1984-06-25 |
| Denní čas | TIME_OF_DAY#15:36:55.36, TOD#15:36:55.36 |
| Datum a čas | DATE_AND_TIME#1984-06-25-15:36:55.360227400, DT#1984-06-25-15:36:55.360227400 |