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



Тип STRING (строка) в Турбо Паскале широко используется для обработки текстов. Он во многом похож на одномерный массив символе ARRAY [O..N] OF CHAR, однако, в отличие от последнего, количество символов в строке—переменной может меняться от 0 до N, где N максимальное количество символов в строке. Значение N определяется объявлением типа STRING [N] и может быть любой константой порядкового типа, но не больше 255. Турбо Паскаль разрешает не указывать J в этом случае длина строки принимается максимально возможной, именно N=255.

Строка в Турбо Паскале трактуется как цепочка символов. К любому символу в строке можно обратиться точно так же, как к элементу одномерного массива ARRAY [O..N] OF CHAR,


например:var st: string;begin if st[5] = 'A' then.... end.

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

var st: string; i: Byte; Begin i:= ord(st[0]); { fi ~ текущая длина строки} while (i < > 0) and (st[i] = ' ') do begin dec(i); st[0]:= chr(i) end; end.

Значение ORD (st[0]), т.е. текущую длину строки, можно получить и с помощью функции LENGTH (st),

например: while (Length (st) < > 0) and (st[Length(st)]=' ') do st[0]:= chr(Length (st)-l);


К строкам можно применять операцию «+» — сцепление,

например: st:='а' + 'b'; st:= st + 'с'; {st содержит "abc"}

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

Следующая программа, например, напечатает символ 1:

var st: string [1]; Begin st:='1231; WiteLn(st); end.

 


Дата добавления: 2015-12-21; просмотров: 14; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!