Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции по курсу.docx
Скачиваний:
108
Добавлен:
24.02.2016
Размер:
2.8 Mб
Скачать

11.3. Основные операции над переменными строкового типа

Над данными строкового типами допустимы операции присваивания (:=), сцепления (+) и операции отношения (=, <>, >, <, >=, <=).

Операция сцепления используется для объединения нескольких строк в одну. Операции отношения проводят сравнение двух строковых операндов. Сравнение строк проводится посимвольно, слева направо, до первого несов-павшего символа и та строка считается больше, в которой первый несовпав-ший символ имеет больший кодовый номер. Например:

'ax' < 'bcd' потому что ' а' < 'b'

' Попов' > ' Панин' потому что ' о'>' а'

11.4. Некоторые процедуры и функции обработки строк

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

Процедуры:

Delete(S:String; pz,n:integer); - удаляет из строки s n сим­волов, начиная с позиции pz, например: S:='florex';

Delete(S,4,2); // результат: S='flox'

Insert(Sv,S:string; pz:integer); - вставляет строку Sv внутрь строки S, начиная с позиции pz, например: S:=' это символы

Insert(' не те ',S,5); // результат: S=' это не те символы

Str(x[: ширина: десятич. знаков]; S:String); преобразует чис­ло х целого или действительного типа в строковое представление, например: x:=25.4e-1; k:=86;

Str(x:8:4,S); // результат: S=' 2.5400' Str(x,S); // результат: S='2,54 0000e+00'

Str(k:3,S); // результат: S=' 8 6'

Val(S:string; х:(действит. или целое); Kod:integer); -преобразует строковое представление числа в числовое в соответствии с типом переменной х, Kod - код ошибки, Kod = 0- успешно, или Kod=номеру позиции в строке где обнаружен символ не соответствующий числовому представлению, например:

S1:='2e-5'; S2:='468'; S3='0..256'

Val(S1,X,kod); // результат: х=2-10-5, kod = 0 Val(S2,K,kod); // результат: k=486, kod = 0 Val(S3 ,X,kod); // результат: x не изменяется, kod=3

Функции:

Copy(S,pz,n) - выделяет из строки S подстроку из n символов, на­чиная с позиции pz, при этом S сохраняется, например: S:='d:\pas\prog.pas';

Sp:=Copy(S,8,4); // результат Sp=' prog'.

Length(S) - определяет текущую длину строки S.

pos(Sp,S) - определяет номер позиции, начиная с которой внутри строки S расположена подстрока Sp, (если внутри S нет подстроки Sp, тогда результат=0), например:

pz:=pos('pas',S); // для вышеприведенной S pz=4.

strToFloat(S) - переводит строковое представление в действи­тельное число (аналог процедуры Val).

strTolnt(S) - переводит строковое представление в целое число.

FloatToStrF(x,fffixed,8,4) - переводит действительное число в строковое представление с форматом х:8:4, (аналог процедуры Str).

IntToStr(m) - переводит целое число в строковое представление, причем длина строки равна количеству десятичных цифр с учетом знака.