|
Учебник по Delphi
Простые типы.
Рассмотрим их:
Булев тип данных — Boolean
Переменные этого типа могут иметь лишь одно из
двух значений: False (ложь) или True (истина). Тип Boolean занимает в памяти
1 байт. При сравнении переменных этого типа имейте в виду, что False < True.
В Delphi можно использовать и другие булевы типы, такие как ByteBool,
WordBool и LongBool. Но они существуют для совместимости с другими языками,
поэтому предпочтительнее использовать тип Boolean.
Целые типы
В зависимости от задачи при написании программы стоит использовать
соответствующие типы. Конечно, сейчас нет такой жесткой зависимости
от аппаратного обеспечения компьютера, и часто (в небольших программах)
можно позволить себе расточительно использовать память — компьютеры
мощные, памяти много. Но если вы пишете что-то серьезное, работая с большими
объемами данных, то нужно внимательно относиться к тому, переменные
какого типа вы используете, и вообще иметь привычку использовать именно те
типы, которые необходимы. Разница в быстродействии будет заметна. Целые
типы данных Delphi приведены в таблице. Некоторые типы данных могут различаться
в разных версиях Delphi, но совместимы снизу вверх — от старых версий
к новым. Проект, созданный в Delphi 3, будет выполняться в Delphi 7, но
не наоборот.
Тип | Минимальное значение | Максимальное значение | Занимает байт | Примечание |
Shortint | -128 | 127 | 1 | |
Byte | 0 | 255 | 1 | |
Smallint | -32 768 | 32767 | 2 | |
Word | 0 | 65535 | 2 | |
Integer | -2 147 483 648 | 2 147 483 647 | 4 | |
Longint | -2 147 483 648 | 2 147 483 647 | 4 | В отличие
от Integer
этот тип
не зависит
от версии
Object Pascal |
Cardinal | 0 | 4 294 967 295 | 4 | В ранних
версиях Delphi
(третьей) этот
тип имеет
диапазон
лишь от 0
до 2 147 483 647,
но также
занимает
в памяти 4 байта |
Int64 | -9 223 372 036 854 775 808 | 9 223 372 036 854 775 807 | 8 | Отсутствует
в ранних версиях
Delphi |
Действительные (вещественные) типы
При работе с дробными числами приходится
использовать переменные действительных типов. Работа с ними менее
удобна, чем с целыми, и вычисления выполняются медленнее.
Действительные типы данных описаны в таблице:
Тип | Порог | Максимальное значение | Количество значащих цифр | Занимает байт |
Real | 2.9E-39 | 1.7E38 | 11-12 | 6 |
Single | 1.5E-45 | 3,4E38 | 7-8 | 4 |
Double | 5.0E-324 | 1.7E308 | 15-16 | 8 |
Extended | 3.4E-4932 | 1,1Е4932 | 19-20 | 10 |
Comp | 1,0 | 9.2E18 | 19-20 | 8 |
Currency | 0,0001 | 9,2E14 | 19-20 | 8 |
Формат типа Real неудобен для Intel-совместимых процессоров, поэтому данный
тип лучше не использовать. Операции с переменными этого типа выполняются
медленнее, чем с переменными других типов.
Несмотря на кажущуюся идентичность действительных типов и математических
действительных чисел, не стоит забывать, что у действительных типов
в Delphi есть определенная точность, которая, увы, не бесконечна. Поэтому при
вычислениях могут возникать определенные погрешности.
Символьные типы
В Delphi их три: Char, AnsiChar и WideChar. Типы Char
и AnsiChar идентичны и занимают в памяти 1 байт. В большинстве случаев
можно использовать тип Char, но иногда может потребоваться применение
WideChar. Символы в переменных этого типа занимают в памяти 2 байта и упорядочены
в соответствии с международным набором символов Unicode. Первые 256 символов совпадают с символами ANSI.
|
|
|