Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
delphi.pdf
Скачиваний:
191
Добавлен:
24.02.2016
Размер:
6.84 Mб
Скачать

В теле программы переменной можно присвоить значение. Для этого используется составной символ :=, например:

Sum :=

5000.0;

//

переменной Sum присваивается 5000

Percent := 0.15;

//

переменной Percent присваивается 0.15

Profit

:= Sum * Percent; //

вычисляется произведение двух переменных

 

 

//

и его результат присваивается переменной

 

 

//

Profit

Вы можете присвоить значение переменной непосредственно при объявлении:

var

Index: Integer = 1; Delimiter: Char = ';';

Объявленные таким образом переменные называются инициализированными. На инициализированные переменные накладывается ограничение: они не могут объявляться в подпрограммах (процедурах и функциях). Если переменная не инициализируется при объявлении, то по умолчанию она заполняется нулем.

Каждый используемый в программе элемент данных должен быть описан в разделе const или var. Исключение составляют данные, заданные непосредственно значением, например:

Write(100, 200); // 100 и 200 - данные, заданные значением

2.3. Простые типы данных

2.3.1. Целочисленные типы данных

Целочисленные типы данных применяются для описания целочисленных данных. Для решения различных задач могут потребоваться различные целые числа. В одних задачах счет идет на десятки, в других — на миллионы. Соответственно в языке Delphi имеется несколько целочисленных типов данных, среди которых вы можете выбрать наиболее подходящий для своей задачи (таблица

2.1).

Фундаментальные типы данных:

Тип данных Диапазон значений Объем памяти (байт)

47

Byte

0..255

1

Word

0..65535

2

Shortint

–128..127

1

Smallint

–32768..32767

2

Longint

–2147483648..2147483647

4

Longword

0.. 4294967295

4

Int64

–2^63..2^63–1

8

Обобщенные типы данных:

 

Тип данных

Диапазон значений

Формат (байт)

Cardinal

0.. 4294967295

4*

Integer

–2147483648..2147483647

4*

Таблица 2.1. Целочисленные типы данных

ПРИМЕЧАНИЕ

* - количество байт памяти, требуемых для хранения переменных обобщенных типов данных, приведено для 32-разрядных процессоров семейства x86.

Пример описания целочисленных данных:

var

X, Y: Integer; TextLength: Cardinal; FileSize: Longint;

Позволим себе дать небольшой совет. При программировании алгоритмов предпочтение следует отдавать обобщенным типам даных, поскольку они позволяют достичь максимальной производительности программ при переходе на другие модели компьютеров (например, при переходе на компьютеры, построенные на основе новых 64-разрядных процессоров). Переменные обобщенных типов данных могут храниться в памяти поразному в зависимости от конкретной модели компьютера, и для работы с ними компилятор может генерировать наиболее оптимальный код. Однако при использовании переменных обобщенных типов данных ни в коем случае нельзя полагаться на формат их хранения в памяти, в частности на размер.

2.3.2. Вещественные типы данных

Вещественные типы данных применяются для описания вещественных данных с плавающей или с фиксированной точкой (таблица 2.2).

48

Тип данных

Диапазон значений

Мантисса

Объем памяти (байт)

Real

5.0*10–324..1.7*10308

15–16

8*

Real48

2.9*10–39..1.7*1038

11–12

6

Single

1.5*10–45..3.4*1038

7–8

4

Double

5.0*10–324..1.7*10308

15–16

8

Extended

3.4*10–4932..1.1*104932

19–20

10

Comp

–9223372036854775808 .. 9223372036854775807

19–20

8

Currency

–922337203685477.5808 .. 922337203685477.5807

19–20

8

 

Таблица 2.2. Вещественные типы данных

 

ПРИМЕЧАНИЕ

* -количество байт памяти, требуемых для хранения переменных обобщенных типов данных, приведено для 32-разрядных процессоров семейства x86.

Пример описания вещественных данных:

var

X, Y: Double; Z: Extended;

Необходимо отметить, что тип Real является обобщенным типом данных и по отношению к нему справедливо все то, что было сказано о типах Integer и Cardinal.

2.3.3. Символьные типы данных

Символьные типы применяются для описания данных, значением которых является буква, цифра, знак препинания и другие символы. Существуют два фундаментальных символьных типа данных: AnsiChar и WideChar (таблица 2.3). Они соответствуют двум различным системам кодировки символов. Данные типа AnsiChar занимают один байт памяти и кодируют один из 256 возможных символов расширенной кодовой таблицы ANSI, в то время как данные типа WideChar занимают два байта памяти и кодируют один из 65536 символов кодовой таблицы Unicode. Кодовая таблица Unicode — это стандарт двухбайтовой кодировки символов. Первые 256 символов таблицы Unicode соответствуют таблице ANSI, поэтому тип данных AnsiChar можно рассматривать как подмножество WideChar.

49

Фундаментальные типы данных:

Тип данных

Диапазон значений

Объем памяти (байт)

AnsiChar

Extended ANSI character set 1

WideChar

Unicode character set

2

Обобщенный тип данных:

 

Тип данных

Диапазон значений

Формат (байт)

Char

Same as AnsiChar's range

1*

Таблица 2.3. Символьные типы данных

ПРИМЕЧАНИЕ

* - Тип данных Char является обобщенным и соответствует типу AnsiChar. Однако следует помнить, что в будущем тип данных Char может стать эквивалентным типу данных WideChar, поэтому не следует полагаться на то, что символ занимает в памяти один байт.

Пример описания переменной символьного типа:

var

Symbol: Char;

В программе значения переменных и констант символьных типов заключаются в апострофы (не путать с кавычками!), например:

Symbol := 'A'; // Переменной Symbol присваивается буква A

2.3.4. Булевские типы данных

Булевские типы данных названы так в честь Георга Буля (George Boole), одного из авторов формальной логики. Диапазон значений данных булевских типов представлен двумя предопределенными константами: True

— истина и False — ложь (таблица 2.4).

Тип данных

Диапазон значений

Объем памяти (байт)

Boolean

False (0), True (1)

1

ByteBool

False (0), True (не равно 0)

1

WordBool

False (0), True (не равно 0)

2

LongBool

False (0), True (не равно 0)

4

Таблица 2.4. Булевские типы данных

50

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]