Интервальные типы данных
Интервальный тип данных задается двумя константами, ограничивающими диапазон значений для переменных данного типа. Обе константы должны принадлежать одному из стандартных порядковых типов (не вещественному и не строковому). Значение первой константы должно быть обязательно меньше значения второй. Например, определим интервальный тип TDigit:
Type TDigit = 0..9;var Digit: TDigit;begin Digit := 5; Digit := 10; // Ошибка! Выход за границы диапазонаend. |
Данные перечисляемых и интервальных типов занимают в памяти 1, 2 или 4 байта в зависимости от диапазона значений типа. Например, если диапазон значений не превышает 256, то элемент данных занимает один байт памяти.
Данные
Данные, независимо от типа, имеют некоторое значение и в программе предстают как константы или переменные. К данным в программе мы будем обращаться по имени.
Константы
Данные, которые получили значение однажды и по своей природе изменяться не могут, называются константами.
Константы описываются с помощью зарезервированного слова const. За ним идет список имен констант, каждому из которых с помощью знака равенства присваивается значение. Одно присваивание отделяется от другого с помощью точки с запятой.
Синтаксис объявления нетипизированных констант:
const identifier = constantExpression
В этом случае identifier – это корректный идентификатор, constantExpression – это выражение, которое компилятор может вычислить без запуска вашей программы. Выражение может включать:
· нумералы (например, 100);
· истинные константы;
· строки (‘Borland Delphi’);
· значения перечисляемых типов (например, см. предыдущий пример описания перечисляемых типов - West);
· специальные константы (true, false, nil);
· вызовы следующих функций (AbsChrHi, HighLengthLo, LowOddOrd, PredRoundSizeOf, SuccSwapTrunc);
Выражение образуется с помощью этих элементов и операций, преобразования типов, и конструкций множеств. Выражение не может содержать указатели, вызовы функций (кроме указанных выше), переменные, типизированные константы.
Примеры нетипизированных констант:
Const Min = 0; Max = 100; Center = (Max - Min) div 2; Beta = Chr(225); NumChars = Ord('Z') - Ord('A') + 1; Message = 'Out of memory'; Numeric = ['0'..'9']; Alpha = ['A'..'Z', 'a'..'z']; AlphaNum = Alpha + Numeric; |
После такого описания для обращения к нужному значению достаточно указать лишь имя соответствующей константы.
При объявлении типизированной константы указывается ее тип:
const identifier: type = value
Const Percent: Double = 0.15; FileName: string = 'HELP.TXT'; NameWinterMonths: array [1..3] of string = (‘декабрь’, ‘январь’, ‘февраль’); |
Основное назначение типизированных констант — объявление константных значений составных типов данных. Возможность изменения типиpованных констант зависит от директив компилятора. Типизированную константу можно рассматривать как переменную, инициализированную некоторым значением.
Переменные
Переменные могут неограниченное число раз менять свое значение в процессе работы программы.
Переменные описываются с помощью зарезервированного слова var. За ним перечисляются идентификаторы переменных, и через двоеточие указывается их тип. Каждая группа переменных отделяется от другой группы точкой с запятой.
var identifierList: type;
В этом случае identifierList – это список корректных идентификаторов, разделенных между собой запятой, type – это любой тип. Например:
Var Index: Integer; // переменная целого типа данных FileName: string; // переменная строкового типа данных Sum, Profit: Double; // группа переменных вещественного типа данных |
В теле программы переменной можно присвоить значение. Для этого используется составной символ :=, например:
Sum := 5000.0; // переменной Sum присваивается 5000 Percent := 0.15; // переменной Percent присваивается 0.15 Profit := Sum * Percent; // вычисляется произведение двух переменных // и его результат присваивается переменной Profit |
Вы можете присвоить значение переменной непосредственно при объявлении:
var identifier: type = constantExpression;
Var Index: Integer = 1; Delimiter: Char = ';'; |
Объявленные таким образом переменные называются инициализированными. На инициализированные переменные накладывается ограничение: они не могут объявляться в подпрограммах (процедурах и функциях).
Операции
Выражения
Переменные и константы всех типов могут использоваться в выражениях. Выражениезадает порядок выполнения действий над данными и состоит из операндов, круглых скобок и знаков операций. Операнды представляют собой константы, переменные и вызовы функций. Операции— это действия, выполняемые над операндами. Например, в выражении
(X + Y) / 2; |
X, Y, 2 — операнды; '+', '/' — знаки операций; скобки говорят о том, что сначала выполняется операция сложения, потом — деления.
В простейшем случае выражение может состоять из одной переменной или константы. Круглые скобки используются, как и при записи обычных математических выражений, для управления порядком выполнения операций.
Можно выделить следующие типы выражений: (можно более подробно с примерами)
- Арифметические выражения
- Логические выражения
- Строковые выражения
Операции в языке Delphi подразделяются на арифметические, операции отношения, логические (булевские), строковые, операцию получения адреса и другие. Выражения соответственно называются арифметическими, отношения, булевскими, строковыми и т.д. в зависимости от того, какого типа операнды и операции в них используются.
Дата добавления: 2016-02-09; просмотров: 1047;