Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
шпоргалка / 100 на 100.doc
Скачиваний:
41
Добавлен:
26.01.2019
Размер:
3.77 Mб
Скачать

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

Строка - последовательность символов кодовой таблицы персонального компьютера. Для хранения и обработки симво­лов используются переменные типа Char. Значением перемен­ной символьного типа может быть любой отображаемый сим­вол: буква русского или латинского алфавитов; цифра; знак препинания

Тип STRING (строка) в Турбо Паскале широко используется для обработки текстов. Он во многом похож на одномерный массив символов. Однако, в отличие от последнего, количество символов в строке-переменной может меняться от 0 до N, где N - максимальное количество символов в строке. Значение N оп­ределяется объявлением типа STRING [N] и может быть любой константой порядкового типа, но не больше 255. Строка в Пас­кале трактуется как цепочка символов. К любому символу в строке можно обратиться точно так же, как к элементу одно­мерного массива

Например:

var

st: String;

begin

………

if st[5] = 'A' then...

end.

Самый первый байт в строке имеет индекс 0 и содержит те­кущую длину строки, первый значащий символ строки занимает второй байт и имеет индекс 1. Над длиной cтроки можно осуще­ствлять необходимые действия и таким способом изменять дли­ну.

Значение текущей длины строки, можно получить и с помо­щью функции LENGTH(st)

К строкам можно применять операцию «+» - сцепление, на­пример: st:=’a’ +’b’;

st : = st + 'с'; {st содержит "abc"}

Если длина сцепленной строки превысит максимально до­пустимую длину N, то «лишние» символы отбрасываются.

Операции отношения =, <>, >, <, >=, <= выполняются над двумя строками посимвольно, слева направо с учетом внутренней кодировки символов. Если одна строка меньше другой по длине, недостающие символы короткой строки заменяются зна­чением CHR(0) .

Следующие операции отношения дадут значение TRUE:

‘’ < '.'

'А' > ‘I’

'Turbo' <' Turbo Pascal'

'Паскаль' >'Turbo Pascal'

Все остальные действия над строками и символами реали­зуются с помощью стандартных процедур и функций.

10. Строковые процедуры и функции.

CONCAT(S1 [,S2, ... , SN]) - функция типа STRING; возвра­щает строку, представляющую собой сцепление строк-параметров S1, S2,..., SN.

COPY(ST, INDEX, COUNT) - функция типа STRING; копиру­ет из строки ST COUNT символов, начиная с символа с номером INDEX.

DELETE (ST, INDEX, COUNT) - процедура; удаляет COUNT символов из строки ST, начиная с символа с номером INDEX.

INSERT (SUBST, ST, INDEX) - процедура; вставляет подстро­ку SUBST в строку ST, начиная с символа с номером INDEX.

LENGTH (ST) - функция типа INTEGER; возвращает длину строки ST.

POS (SUBST, ST) - функция типа INTEGER; отыскивает в строке ST первое вхождение подстроки SUBST и возвращает номер позиции, с которой она начинается; если подстрока не найдена, возвращается ноль.

STR(X[; WIDTH [: DECIMALS] ], ST) - процедура; преобра­зует число X любого вещественного или целого типов в строку символов ST так, как это делает процедура WRITELN перед вы­водом; параметры WIDTH и DECIMALS, если они присутству­ют, задают формат преобразования: WIDTH определяет общую ширину поля, выделенного под соответствующее символьное представление вещественного или целого числа X, a DECIMALS количество символов в дробной части (этот параметр имеет смысл только в том случае, когда Х- вещественное число).

VAL(ST, X, CODE) - процедура; преобразует строку симво­лов ST во внутреннее представление целой или вещественной переменной X, которое определяется типом этой переменной. Параметр CODE содержит ноль, если преобразование прошло успешно, и тогда в X помещается результат преобразований, в противном случае он содержит номер позиции в строке ST, где обнаружен ошибочный символ, и в этом случае содержимое X не меняется; в строке ST могут быть ведущие пробелы, однако ведомые пробелы недопустимы.

UPCASE (СН) - функция типа CHAR; возвращает для сим­вольного выражения СН, которое должно представлять собой строчную латинскую букву, соответствующую заглавную букву; если значением СН является любой другой символ (в том числе строчная буква русского алфавита), функция возвращает его без преобразования.

Соседние файлы в папке шпоргалка