Реферат: Object Pascal
Строковое значение изображают в виде последовательности символов, заключенной в апострофы. Пустую строку изображают двойным апострофом.
Примеры значений строковых типов:
'Иванов И.И.' '' 'Газета"ИЗВЕСТИЯ"' 'Строка символов'
Примеры описания переменных строковых типов:
Var
s1, s2 : ShortString [12];
st1, st2 : AnsiString [580];
ChMassiv: array [1..15] of String;
3.6. Строковый тип PChar
Для связи с функциями Windows в язык Object Pascal введен новый тип строк – PChar-строки с завершающим нулем. В обычной и привычной для прежних версий языка String-строке нулевой байт отведен для хранения реального количества символов этой строки, а сами символы последовательно располагаются начиная с первого байта. В PChar-строке, наоборот, символы располагаются начиная с нулевого байта, а их последовательность заканчивается завершающим нулем.
Строки PChar можно объявлять как обычные символьные массивы. Например, строку длины 3000 плюс один байт, зарезервированный под завершающий нуль, можно определить следующим образом:
Var
s: array[1 .. 3000] of Char;
П р и м е ч а н и е. Без необходимости не используйте PChar-строки. Строковые String-типы и функции для обработки таких строк хорошо отлажены, они легче в использовании, и, как правило, надежнее PChar-строк.
3.7. Динамические PString-строки
Этот тип строк так же, как PChar, введен в язык для обращения к функциям Windows. Подробнее PString-строки описаны далее.
3.8. Перечислимые типы
Этот тип переменных может быть сформирован самим пользователем. Он создается простым перечислением возможных значений переменной.
Примеры перечислимых типов:
Type
MaleNames = (Ivan, Peter, Serge);
SwithOpts = (On, Off);
SostTypes = (Active, Passive, Waiting);
Sides = (Left, Right, Top, Down);
В первом примере переменная объявленного типа может принимать значение одного из трех мужских имен. Во втором – одно из двух значений – On (включено) или Off (выключено) и т. д.
Имена из списка перечислимого типа считаются константами соответствующего перечислимого типа и в пределах блока не должны повторяться.
Например, описания вида
Type
Days1 = (Monday, Wednesday, Friday);