Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Длинные строки



Чтобы устранить ограничения традиционных строк Паскаля, в Delphi введена поддержка длинных строк. В действительности имеется два типа строк:

· Тип ShortString соответствует обычным строкам Паскаля. Каждый элемент короткой строки имеет тип ANSIChar.

· Тип AnsiString соответствует новым длинным строкам переменного размера. Такие строки размещаются динамически, и их размер практически не ограничен. В основе таких строк также лежит тип ANSIChar.

· В зависимости от значения новой директивы компилятора $H вы получите или короткую, или длинную строку. По умолчанию стоит значение $H+, что соответствует длинным строкам.

Таблица 3.3

Строковые типы данных

Название типа Максимальная длина (в символах) Занимаемая память Используется для…
ShortString   От 2 до 256 байт backward compatibility
AnsiString 231 От 4 байт до 2 Гбайт 8-bit (ANSI) characters
WideString 230 От 4 байт до 2 Гбайт Unicode characters COM servers and innterfaces

Таблица 3.4 Таблица 3.5

Символьный тип Логический тип

Название типа Размер   Название типа Размер
AnsiChar 8 бит   Boolean  
WideChar 16 бит   ByteBool  
      WordBool  
      LongBool  

Используются также два типа стандартного языка Pascal: нумерованные и перечислимые.

Нумерованные (enumerated) типы:

type typeName = (val1,..., valn).

Перечислимые (subrange) типы:

Type

SomeNumbers = -128..127;

Caps = 'A'..'Z';

Для совместимости со строками, оканчивающимися 0, введены три новых типа:

PChar – указатель на строку, оканчивающуюся 0 (NULL terminated);

PAnsiChar – указатель на строку Ansi, оканчивающуюся 0.

PWideChar – указатель на строку WideChar, оканчивающуюся 0.

Приведение к типу PChar:

Var

str: string;

Begin





Дата публикования: 2014-10-25; Прочитано: 317 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.006 с)...