Перейти к основному содержимому

Литералы

ФормаТипПримерыПримечания
Десятичное целоеInteger0 42 100000064-битное со знаком. Без разделителей разрядов и суффиксов. Ведущий - — это унарный минус, а не часть литерала.
Шестнадцатеричное целоеInteger0x7B 0XFF 0x80000x или 0X, затем шестнадцатеричные цифры в любом регистре. Даёт ровно то же значение, что и десятичная форма: 0x7B == 123.
ВещественноеReal0.5 3.14159 100.0Нужны цифры с обеих сторон точки. .5, 5. и экспоненты вроде 1e3 недопустимы.
ТекстText"hello" "" "Ünïcødé ✓"Только двойные кавычки. 'a' — ошибка. Допускается любой текст Юникода. См. escape-последовательности ниже.
ЛогическоеBooltrue falseТолько в нижнем регистре.
Именованная константаIntegerVirtualKey.F5 MouseButton.RightПри компиляции скрипта заменяется своим числом. См. Именованные константы.

Целочисленные литералы читаются через 64-битное число с плавающей точкой, поэтому всё, что больше 2⁵³ (9 007 199 254 740 992), теряет точность. Значения за пределами диапазона 64-битных целых со знаком не поддерживаются.

Escape-последовательности строк​

ПишетеПолучаете
\nперевод строки (U+000A)
\rвозврат каретки (U+000D)
\tтабуляцию
\"двойную кавычку
\\одну обратную косую черту
\ в конце строкиничего: это продолжение строки. Отбрасываются и обратная косая черта, и разрыв строки.
\ перед любым другим символомэтот символ без обратной косой черты. "\q" — это "q".
warning

Пути Windows: "C:\temp\new" — не путь. \t становится табуляцией, а \n — разрывом строки. Удваивайте каждую обратную косую черту ("C:\\temp\\new") или стройте путь через ShellExpandEnvironmentVariables("%TEMP%\\new").

Escape-последовательностей \x.. и \u.... нет. Окончание строки Windows записывается как \r\n. Строковый литерал может содержать и настоящий разрыв строки. Компилятор его принимает, но редактор окрашивает остаток строки как незакрытую строку, поэтому продолжение через \ или \n — более аккуратный способ записать многострочный текст.

path = "C:\\Users\\Public\\notes.txt"; // C:\Users\Public\notes.txt
quoted = "She said \"hi\""; // She said "hi"
twoLns = "first\nsecond"; // две строки
long = "This is all one line of text, \
split in the source for readability."; // в значении нет разрыва строки