Data type/ru

From Free Pascal wiki

Deutsch (de) English (en) español (es) français (fr) Bahasa Indonesia (id) italiano (it) русский (ru)


Общее

На этой странице представлена подборка типов данных в Free Pascal.
Тип данных - это шаблон для поля данных.
Тип данных поля определяет, как компилятор и процессор интерпретируют его содержимое.
Видимость поля данных зависит от местоположения его объявления.

Целочисленные типы

Беззнаковые типы

Поля данных целых типов без знака могут содержать только «положительные» целые числа.

  • UInt8 - Диапазон: (0 .. 255)
  • Byte - Диапазон: (0 .. 255)
  • UInt16 - Диапазон: (0 .. 65535)
  • Word - Диапазон: (0 .. 65535)
  • NativeUInt - Диапазон: зависит от типа процессора.
  • DWord - эквивалентно Longword.
  • Cardinal - эквивалентно Longword.
  • UInt32 - Диапазон: (0 .. 4294967295)
  • Longword - Диапазон: (0 .. 4294967295)
  • UInt64 - Диапазон: (0 .. 18446744073709551615)
  • QWord - Диапазон: (0 .. 18446744073709551615)


Типы со знаком

Поля данных целых типов со знаком могут содержать положительные и отрицательные целые числа.

  • Int8 - Диапазон: (-128 .. 127)
  • ShortInt - Диапазон: (-128 .. 127)
  • Int16 - Диапазон: (-32768 .. 32767)
  • SmallInt - Диапазон: (-32768 .. 32767)
  • Integer - Диапазон: это эквивалент либо Smallint, либо Longint (для 16 или 32-разрядных процессоров соответственно).
  • Int32 - Диапазон: (-2147483648 .. 2147483647)
  • NativeInt - Диапазон: зависит от типа процессора.
  • Longint - Диапазон: (-2147483648 .. 2147483647)
  • Int64 - Диапазон: (-9223372036854775808 .. 9223372036854775807)


Типы с плавающей точкой

Поля данных типов с плавающей точкой могут содержать:

  1. положительные и отрицательные целые числа с возможными ошибками округления.
  2. положительные и отрицательные числа с плавающей точкой.


  • Single - Диапазон: (1.5E-45 .. 3.4E38)
  • Real - Диапазон: зависит от платформы.
  • Real48 - Диапазон: 2.9E-39 .. 1.7E38
  • Double - Диапазон: (5.0E-324 .. 1.7E308)
  • Extended - Диапазон: зависит от платформы.
  • Comp - Диапазон: (-2E64+1 .. 2E63-1)
  • Currency - Диапазон: (-922337203685477.5808 .. 922337203685477.5807)


Логические(булевы) типы

Поля данных логического типа содержат значения истинности.

  • Boolean - Диапазон: (True, False), 8 Bit
  • ByteBool - Диапазон: (True, False), 8 Bit
  • WordBool - Диапазон: (True, False), 16 Bit
  • LongBool - Диапазон: (True, False), 32 Bit


Перечислимые типы

Поля данных перечислимого типа являются «списками» (перечислениями) целочисленных беззнаковых констант.

  • Enum Type - Диапазон: (интегральные типы данных)


Символьные типы

Типы символов с однобайтовой кодировкой

  • Char - Постоянная длина: 1 байт, представление: 1 символ.
  • ShortString - Максимальная длина: 255 символов.
  • String - Максимальная длина: Short String или Ansistring (зависит от используемого параметра компилятора).
  • PChar - Указатель на строку с нулевым символом на конце без ограничения длины.
  • AnsiString - Нет ограничений по длине.
  • PAnsiChar - Указатель на строку с нулевым символом в конце без ограничения длины.

Смотрите обзор различных типов символов и строк.

Типы символов с многобайтовой кодировкой

Кодировка с 2 или 4 байтами зависит от [используемой операционной] системы.

  • WideChar - Постоянная длина: 2 или 4 байта, представление: 1 символ.
  • WideString - Нет ограничений по длине.
  • PWideChar - Указатель на терминированную строку с нулевым символом на конце без ограничения длины.
  • UnicodeChar - Постоянная длина: 2 или 4 байта, представление: 1 символ.
  • UnicodeString - Нет ограничений по длине.
  • PUnicodeChar - Указатель на терминированную Unicode-строку с нулевым символом на конце без ограничения длины.

Смотрите обзор различных типов символов и строк.

Вариантные типы


Константы

  • Нетипизированные константы
    • Const - Можно использовать только простые типы данных.
  • Типизированные константы
    • Const - Можно использовать простые типы данных, а также записи и массивы.
  • Resource Strings
    • Resourcestring - Используется для локализации (доступно не во всех режимах компиляции).


Структурные типы

  • Array - Размер массива зависит от типа и количества элементов, которые он содержит.
  • Record - Сочетание нескольких типов данных.
  • Set - Набор элементов порядкового типа; размер зависит от количества элементов в нем.


Типы поддиапазонов


Указатель


Классы и объекты

  • Object - Разработано под Turbo Pascal 5.5 для DOS и предшественников класса.
  • Class - Разработано под Delphi 1.0 для Windows и наследников объекта.