Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
shp.doc
Скачиваний:
12
Добавлен:
18.09.2019
Размер:
5.46 Mб
Скачать

7.Обработка строковых данных в Паскале. Особенности использования.

Строковый тип данных предназначен для отображения цепочки символов. Записывается служебным словом STRING. Описание VAR S1:STRING; S2:STRING[20];. Если не указана длина строки, то используем максимум [255]. Длина может быть меньше или больше описанной. Если больше, то лишние правые отбрасываются. В нулевом байте хранится длина строки. Строкам можно присваивать значения, сравнивать их (используя операции отношения), вводить и выводить целиком (а не посимвольно), объединять вместе. Операция сравнения выполняется поэлементно – слева направо, при этом сравниваются коды символов, из которых состоят строки. Справедливы следующие отношения: ‘string’<’strong’; ‘100’<’110’. Строки могут иметь разные длины, в этом случае, если первая строка короче второй и все ее символы совпадают с символами второй строки, большей считается более длинная. Пустая строка изображается двумя кавычками (‘’), между которыми нет ничего. Со строковой переменной можно обращаться, как с массивом. Доступ к I – му слева символу строки дает обращение с[i], где с – строковая переменная. В нулевом элементе строки указывается ее текущая длина. Если строковой переменной присваивается значение, большее, чем указанная длина, то лишние правые символы теряются. Организация строки подобно массиву дает возможность выделить любой ее элемент непосредственно. Также можно обращаться к нулевому байту строки.

Стандартные процедуры и функции строковых данных. Функция Length (длина) - определяет фактическую длину строки (Length (s:String):Byte) . Функция UpCase преобразовывает строчные в прописные, русский не преобразует. Функция COPY. – позволяет копировать фрагмент одной строки из одной переменной в другую. Для использования функции необходимо указать следующие параметры: имя строки из которой копируем; позицию в строке, начиная с которой будем копировать; число копируемых символов (COPY (ST,N,K)). Copy (s:string; start,len: Integer): String; Выделяет из строки s подстроку длиной len символов, начиная с позиции start. Функция POS. POS (subs,s:string):Byte; позволяет определить, входит ли подстрока subs в строку s. Эта функция возвращает число, соответствующее позиции, начиная с которой subs входит в s. Если subs не входит в s, то возвращается ноль. Функция concat (конкатенация) Concat (s1,s2,s3…sn:String) - объдиняет строки s1..sn в одну. Н-р: Var ST:string; ST1:STRING[5]; S:char; begin ST:=’ ‘; ST:= ‘a’+’’bc; ST:=ST+d; S:=’e’; ST:=ST+’s’; ST1:=’FGH’; ST:=concat (ST,ST1); Результат {abcdefgh}. Процедура DELETE. DELETE (var s: string; start, len:integer); удаляет из строки s подстроку длиной len символов, начиная с позиции start. В результате выполнения опреаторов: s:=’алгоритм’; Delete (s,1,4); (результат - ритм). Процедуру Insert. Insert (subs:String; var s : string; start;integer); позволяет вставить в строку s другую строку subs, начиная с позиции start. Н-Р s:=’алм’; subs:=’горит’; Insert (subs,s,3); В результате выполнения этой последовательности операторов значением строки s будет слово ‘алгоритм’.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]