Суббота, 27.04.2024, 00:00
Приветствую Вас Гость | RSS | PDA

Всё для студента информата

Полезная информация

Статьи IT

Всё для студента IT » Статьи » Обучение Delphi

Типы данных в Delphi 2010: целые и действительные типы данных

Типы данных в Delphi можно разделить на предопределенные в языке (встроенные) типы и типы, определяемые пользователем. К предопределенным относятся типы целые, действительные, символы, строки, указатели, булевы, variant.

Определяемые пользователем типы могут быть использованы или непосредственно в объявлении переменной, или должны быть объявлены с помощью ключевого слова Type Это слово начинает раздел объявления типов. После него может следовать ряд объявлений типов в форме:

<идентификатор типа> = <описание типа>;

Например:

...
Type 
 TColor = (red, blue, green); //Создание типа данных TColor 
var 
 Color:TColor; //Объявление переменной Color, типа TColor
...
begin
 Color:=red; //Присваивание переменной Color допустимого значения red.
end; 

В данном примере, переменные типа TColor, могут принимать всего 3 значения: red, blue или green.

Создание пользовательских типов я постараюсь описать более подробно в другой статье. Остановимся более подробно на предопределенных типах данных. Итак:

Целые типы данных в Delphi

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

Тип данных Диапазон значений Занимаемая память (байт) Может ли хранить отрицательные значения Алиасы (псевдонимы)
Byte от 0 до 255 1 нет  
Word от 0 до 65535 2 нет  
Cardinal от 0 до 4294967295 4 нет LongWord
ShortInt от -128 до 127 1 да Int8
SmallInt от -32768 до 32767 2 да Int16
Integer от -2147483648 до 2147483647 4 да LongInt, Int32
Int64 от -9223372036854775808 до 9223372036854775807 8 да  

Действительные типы данных в Delphi

Их ещё иногда называют вещественными типами (типы с плавающей запятой или точкой).

Действительные типы данных предназначены для хранения чисел, имеющих дробную часть. Ниже приведена таблица, в которой перечисляются эти типы для Delphi 2010 и даются диапазоны их изменений.

Тип данных Диапазон значений Занимаемая память (байт) Число значащих разрядов Алиасы (псевдонимы)
Single от ±1.5·10-324 до ±3.4·10+308 7-8 4  
Double от ±5.0·10-45 до ±1.7·10+38 15-16 8 Real, Real48
Extended от ±3.6·10-4932 до ±1.1·10+4392 19-20 10  
Comp от -2·1063 до +2·1062 19-20 8  
Currency от -922337203685477.5808
до +922337203685477.5807
19-20 8  

Тип, обеспечивающий максимальную производительность - это Double.

Тип Extended - обладает самой высокой точностью, но работает медленне всех и потребляет много памяти. Кроме того, при использовании типа Extended могут возникать проблемы с переносимостью на другие платформы.

Типы данных Comp и Currency предназначен для представления чисел с фиксированной точкой. Они введены для выполнения точных финасовых рассчетов.

Тип Comp является скорее целым типом, нежели вещественным. Он оставлен в целях совместимости, т.к. его диапазон значений полностью перекрывается типом Int64.

Currency в болшей степени используется для представления денежных велечин. В памяти он хранится как масштабированное в 10000 раз 8-байтовое целое.

Приведенные в таблицах затраты памяти могут изменяться от версии к версии и от системы к системе. Поэтому, если требуется достоверно знать затраты памяти для того или иного типа, следует пользоваться функцией SizeOf.

Например:

var
 a:int64;
 b:double;
 size:byte;
 size2:byte;
begin
 size:=SizeOf(a);
 size2:=SizeOf(b); 
end;

После выполнения этого кода переменные size и size2 примут значение 8, т.к. каждая из них (Типы данных int64 и double) занимает в памяти 8 байт.

Похожие статьи:

Не нашли то, что Вам нужно?.. Найдите ответ на форуме!
Категория: Обучение Delphi | Добавил: Akron (31.03.2011)
Просмотров: 4140 | Теги: урок, типы данных, Delphi
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Сообщество
Помощь
Форма входа
Поиск

Студенческий помощник по информатике © 2024
При цитировании материалов данного сайта, обязательна ссылка на источник: ITstudents.ru



>