Delphi. Учимся на примерах
Шрифт:
В языке Object Pascal идентификаторы не чувствительны к регистру букв, то есть нет различия между строчными и заглавными буквами. Таким образом, идентификатор функции IntToStr равнозначен идентификатору inttostr или intTOstr.
В качестве имен идентификаторов не могут использоваться следующие зарезервированные слова:
• and, array, as, asm, at, automated;
• begin;
• case, class, const, constructor;
• destructor, div, do, downto;
• else, end, except, exports;
• file,finalization, finally, for, function;
• goto;
• if, implementation, in, inherited, initialization, inline,interface, is;
• label, library;
• mod;
• nil, not;
• object, of, on, or, out;
• packed, private, procedure, program, property, protected, public, published;
• raise,record, repeat, resourcestring;
• set, shl, shr, string;
• then, threadvar, to, try, type;
• unit, until, uses;
• var;
• while, with;
• xor.
Встроенные
Числовые типы
К числовым типам языка Object Pascal относятся целочисленные и типы чисел с плавающей запятой (табл. Д.1).
Таблица Д.1. Числовые типы данных языка Object Pascal
Целочисленные типы | Диапазон значений | Типы чисел с плавающей запятой | Диапазон значений |
---|---|---|---|
Byte | 0..255 | Real | 5.0·10– 324..1.7·10308 |
ShortInt | – 128..127 | Real48 | 2.9·10– 39..1.7·1038 |
SmallInt | – 32768..32767 | Single | 1.5·10– 45..3.4·1038 |
Word | 0..65535 | Double | 5.0·10– 324..1.7·10308 |
Integer, LongInt | – 2147483648..21474883647 | Extended | 3.6·10– 4951..1.1·104932 |
Cardinal, LongWord | 0..4294967295 | Comp | – 263+1..263–1 |
Int64 | – 263..263–1 | Currency | – 922337203685477.5808..922337203685477.5807 |
Символьный тип
Символьный тип обозначается при помощи ключевого слова Char к его значения хранят только один символ.
Строковые типы
В языке Object Pascal используются два обобщенных строковых типа:
• String — если в проекте Delphi указана директива компилятора {$H+} (поддержка больших строк), то этому типу соответствуют строки длиной от 0 до 2147483648 символов; в противном случае типу String соответствуют строки длиной от 0 до 255 символов;
• PChar — тип, аналогичный строковому типу языка C.
По своей сути, строковые значения — это массивы символов, в которых нумерация элементов для типа String начинается с 1, а для типа PChar — с 0.
Булев
Переменная булевого типа занимает один байт памяти и может принимать только одно из двух значений: True ("истина", "да", 1) или False ("ложь", "нет", 0). Булев тип обозначается при помощи ключевого слова Boolean.
Массивы
Массив — это упорядоченная именованная совокупность однотипных значений, к которым можно обращаться по их порядковому номеру (индексу). Для описания массивов в языке Object Pascal используют следующие формы:
• array [1..N1] of type — одномерный массив фиксированного размера (N1 — размерность массива, type — тип значений, хранимых в массиве);
• array[1..N1, 1..N2] of type — двухмерный массив фиксированного размера;
• array[1..N1, 1..N2, 1..N3] of type — трехмерный массив фиксированного размера;
• array of type — массив переменного размера. Длину таких массивов можно изменять в процессе выполнения программы при помощи процедуры SetLength. Индексация значений начинается с 0.
Константы
Константа — это именованное фиксированное значение. Для объявления констант используют конструкцию вида:
Например:
Тип константы определяется автоматически по присвоенному ей значению.
Переменные
Переменная — это именованное значение определенного типа, которое можно изменять в процессе выполнения программы. Для объявления переменных используют запись следующего вида:
var имя_переменной: имя_типа;
Например :
При обращении и инициализации переменных используют следующие правила:
• для присвоения значений переменным используют оператор присваивания :=;
• строковые и символьные значения, присваиваемые переменным, заключают в одинарные кавычки ('с', ' строка');
• для обращения к отдельным элементам массива или отдельным символам строки используют запись вида: а[1] — для одномерных массивов и строк; а[3][1] – для двухмерных массивов; а[1][6][2] — для трехмерных массивов и т. д.;
• в качестве типа переменной может быть указан как встроенный тип языка Object Pascal, так и пользовательский, определенный при помощи ключевого слова type (создание пользовательских типов рассматривается ниже).
К переменным в программе обращаются по их идентификаторам.
Пример для типа String: