МУНИЦИПАЛЬНОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ
  ГОРОДА КОСТРОМЫ
"ГИМНАЗИЯ №1"

 

Строки. Типы данных STRING

 

Строка. Тип данных STRING

Строка (string) – это последовательность литер. Тип данных (string) определяет строки с максимальной длиной 255 символов. Переменная этого типа может принимать значения переменной длины.

Например,

Var

MaxLine : string;

City : string[30]

Строковая переменная может иметь атрибут длины, определяющий ее максимальную длину.

Текущая длина строковой переменной может быть определена с помощью встроенной функции Length. для заданного значения типа string эта функция возвращает целое значение, показывающее количество литер в строке. Выражения, в которых операндами служат строки, называются строковыми выражениями.

Над строками определены две операции:

1. Операция сцепления (+) применяется для сцепления нескольких строк в одну.

Например,

SumStr := 'Турбо'+'Паскаль'+'7.0';

2. Операции отношения (=, <>, >, <, >=, <=) проводят сравнение двух строк слева направо до первого несовпадающего символа, и та строка считается больше, в которой первый несовпадающий символ имеет больший номер в стандартной таблице обмена информацией (ASCII). Результат выполнения операций отношения над строками всегда имеет булевой тип (логический).

Например, выражение 'MS-DOS'<'MS-Dos' имеет значение True.

Если строки имеют различную длину, но в общей части символы совпадают, считается, что более короткая строка меньше, чем более длинная.

Строки считаются равными, если они совпадают по длине и содержат одни и те же символы на соответствующих местах в строке.

Для присваивания строковой переменной результата строкового выражения используется оператор присваивания. Если значение переменной после выполнения оператора присваивания превышает по длине максимально допустимую при описании величину, то все лишние символы справа отбрасываются.

Допускается смешение в одном выражении операндов строкового и символьного типа.

К отдельным символам строки можно обратиться по номеру (индексу) данного символа в строке.

Например, чтобы обратиться к третьему символу строки SumStr надо записать SumStr[3]. Запись SumStr[0] дает значение текущей длины строки.

Для эффективного программирования алгоритмов обработки текстов необходимо хорошо понимать внутреннюю структуру представления строк в памяти. Строки реализованы достаточно просто. Для хранения строковых переменных выделяется память, на единицу большая максимальной длины строки. Начальный байт этой памяти отводится для хранения текущей длины строки, следующие байты - для символов самой строки. Так как элементы строк стандартно нумеруются целыми числами, начиная с единицы, байт с длиной строки можно считать нулевым ее элементом. Такая структура памяти допускает прямой доступ к ее элементам.

Для обработки строковых данных можно использовать встроенные процедуры и функции:

1. Delete (Str,Poz,N) – удаление N символов строки Str, начиная с позиции Poz.

2. Insert (What,Where,Poz) – вставка строки What в строку Where, начиная с позиции Poz.

3. Copy (Str,Poz,Nstr) – выделяет строку длиной Nstr, начиная с позиции Poz, из строки Str.

4. Concat (Str1,Str2,...,StrN) – выполняет сцепление строк в том порядке, в каком указаны в списке параметров.

5. Poz (What,Where) – обнаруживает первое появление подстроки What в строке Where.

6. UpCase (Ch) – преобразует строчную букву в прописную.

7. Str (Number,Stroka) – преобразует число в строку.

8. Val (Stroka,Number,Code) – преобразует строку в число и выдает код правильности преобразования.

НАЦИОНАЛЬНЫЙ ФОНД ПОДГОТОВКИ КАДРОВ. ИНФОРМАТИЗАЦИЯ СИСТЕМЫ ОБРАЗОВАНИЯ.
Сайт сделан по технологии "Конструктор школьных сайтов".