Типы данных

Порядковые типы

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

Тип	Размер	Диапазон значений
Byte	1	0 .. 255
Shortint	1	-128 .. 127
Smallint	2	-32 768 .. 32 767
Word	2	0 .. 65 535
Integer	2 или 4	как у smallint или longint
Cardinal	4	Longword
Longint	4	-2 147 483 648 .. 2 147 483 647
Longword	4	0 .. 4 294 967 295
Int64	8	-9 223 372 036 854 775 808 .. 9 223 372 036 854 775 807
QWord	8	0 .. 18 446 744 073 709 551 615

Типы Cardinal, Longword, Smallint, Int64, QWord используются во Free Pascal, но в Borland (Turbo) Pascal не используются. Могут отсутствовать и в других версиях языка Pascal, таких, как Pascal ABC.

Целочисленные типы делятся по размеру занимаемой памяти, а также - по возможности или невозможности сохранять отрицательные значения. Первые называются знаковыми, вторые - беззнаковыми.

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

Тип	Размер	Диапазон значений
Boolean	1	False или True

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

Символьный тип (Char)

Стандартный для языка Pascal символьный тип имеет 256 значений. Переменные этого типа занимают один байт.

Char	1	#0 .. #255 (Множество выводимых символов и соответствующие им номера зависят от кодировки)

Вещественные типы (типы с плавающей запятой)

Эти типы используются для работы с дробными или с очень большими значениями. Обратите внимание, значения этих типов всегда рассматриваются как приближённые значения.

Тип	Размер	Диапазон значений	«Точных» знаков, после запятой
Real	4 или 8	Зависит от платформы	???
Single	4	1.5e-45 .. 3.4e38	7-8
Double	8	5.0e-324 .. 1.7e308	15-16
Extended	10	1.9e-4932 .. 1.1e4932	19-20
Comp	8	-2e64+1 .. 2e63-1	19-20
Currency	8	-922 337 203 685 477.5808 .. 922 337 203 685 477.5807	4

Тип Currency используются во Free Pascal, но в Borland (Turbo) Pascal не используется. Может отсутствовать и в других версиях языка Pascal, таких, как Pascal ABC.

Тип Comp предназначен для хранения больших целых чисел со знаком, но использовать переменные данного типа вместо integer, например - в качестве счётчика в цикле for, нельзя. Он относится к группе real-подобных типов.