Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | ||
|
Некоторые типы данных, стандартные для языка Pascal, немного изменились в сторону расширения диапазона возможных значений и, соответственно, увеличения занимаемого места. Это связано с тем, что создаваемые в Delphi приложения ориентированы на работу в операционной системе Windows, а не DOS, что накладывает на них некоторые требования. Программы, выполняемые в Windows, широко используют системные функции операционной системы, передавая им множество параметров. Таким образом, представление информации в Delphi должно соответствовать представлению аналогичной информации в Windows.
В табл. 2.1 и 2.2 приведены сравнительные таблицы типов данных в Pascal и Delphi, в которых указаны сведения о типах данных в Pascal и Delphi. В нижних частях таблиц приводятся сведения о новых типах данных, которых не было в языке Pascal.
Сравнительная таблица целочисленных типов данных в Pascal и Delphi Таблица 2.1
Название типа | Pascal | Delphi | |||
Диапазон | Память, байт | Диапазон | Память, байт | ||
ShortInt | -128.. 127 | так же | |||
Integer | -32768..32767 | -2147483648..2147483647 | |||
LongInt | -2147483648..2147483647 | так же | |||
Byte | 0..255 | так же | |||
Продолжение таблицы 2.1 | |||||
Word | 0..65535 | так же | |||
Cardinal | 0..4294967295 | ||||
SmallInt | -32768..32767 | ||||
Int64 | -263..263 -1 | ||||
LongWord | 0..4294967295 |
Сравнительная таблица вещественных типов данных в Pascal и Delphi Таблица 2.2
Название типа | Pascal | Delphi | ||||
Диапазон | Память, байт | Точность, всего цифр | Диапазон | Память, байт | Точность, всего цифр | |
Real | ±2.9x10-39..±1.7x1038 | 11.12.09 | ±5.0x10-324..±1.7x10308 | 15-16 | ||
Single | ±1.5x10-45.,±3.4x1038 | 07.08.09 | так же | |||
Double | ±5.0x10- 324..±1.7x10308 | 15-16 | так же | |||
Extended | ±3.4x10- 4932..±1.1x104932 | 19-20 | ±3.6x10-4851 ..±1.1x104932 | 19-20 | ||
Comp | -9.2x10l8. .9.2x10l8 | 19-20 | -263 +1.. 263-1 | 19-20 | ||
Real48 | 2.9x10-39..1.7x1038 | 11.12.09 | ||||
Currency | -922337203685477.5808.. 922337203685477.5807 | 19-20 |
Из сравнительных таблиц 2.1 и 2.2 видно, что среди целочисленных типов данных не произошло существенных изменений, за исключением увеличения диапазона типа Integer. Это связано с частым использованием данного типа при передаче параметров системным функциям Windows. Также добавлены новые типы Cardinal, Int64 и LongWord для более удобной организации структур данных в программе.
Новый целочисленный тип данных SmallInt соответствует типу Integer языка Pascal и добавлен в Delphi для упрощения переноса фрагментов текста из старых программ, работающих в операционной системе DOS, которые используют переменные типа Integer и чувствительны к возможному изменению размеров этих переменных. При переносе таких фрагментов ссылки на тип Integer следует заменять на SmallInt.
Среди вещественных типов данных изменены возможности типов Real, Extended и Comp, а также, для совместимости с программами, написанными на Turbo Pascal, добавлен новый тип Real48, совпадающий с типом Real языка Pascal.
Особого внимания заслуживает новый вещественный тип данных Currency, предназначенный для использования в финансовых вычислениях и призванный исключить ошибки искажения значений, присущие переменным с плавающей точкой. Переменные типа Currency на самом деле хранятся не как вещественные переменные, а как целочисленные переменные типа Int64, а при использовании их в выражениях автоматически делятся на 10000. Таким образом, значения переменных типа Currency являются числами не с плавающей точкой, а с фиксированной.
Дата публикования: 2014-11-02; Прочитано: 376 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!