Spec-Zone.ru › Crystal

Целые числа

Существует четыре знаковых типа целых чисел и четыре беззнаковых типа целых чисел:

Тип Длина Минимальное значение Максимальное значение
Int8 8 -128 127
Int16 16 −32,768 32,767
Int32 32 −2,147,483,648 2,147,483,647
Int64 64 −263 263 - 1
UInt8 8 0 255
UInt16 16 0 65,535
UInt32 32 0 4,294,967,295
UInt64 64 0 264 - 1

Литерал целого числа — это необязательный знак + или -, за которым следует последовательность цифр и символов подчёркивания; после неё может указываться суффикс. Если суффикс отсутствует, тип литерала — наименьший из типов Int32, Int64 и UInt64, в который помещается число:

1 # Int32

1_i8  # Int8
1_i16 # Int16
1_i32 # Int32
1_i64 # Int64

1_u8  # UInt8
1_u16 # UInt16
1_u32 # UInt32
1_u64 # UInt64

+10 # Int32
-20 # Int32

2147483648          # Int64
9223372036854775808 # UInt64

Символ подчёркивания _ перед суффиксом необязателен.

Символы подчёркивания можно использовать, чтобы числа было легче читать:

1_000_000 # better than 1000000

Двоичные числа начинаются с 0b:

0b1101 # == 13

Восьмеричные числа начинаются с 0o:

0o123 # == 83

Шестнадцатеричные числа начинаются с 0x:

0xFE012D # == 16646445
0xfe012d # == 16646445

To the extent possible under law, the persons who contributed to this workhave waived
all copyright and related or neighboring rights to this workby associating CC0 with it.
https://crystal-lang.org/reference/1.2/syntax_and_semantics/literals/integers.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API