• Иллюстрированный самоучитель по Turbo Pascal

    Строки

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

    Строка в Турбо Паскале трактуется как цепочка символов. К любому символу в строке можно обратиться точно так же, как к элементу одномерного массива ARRAY [0..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]); {i – текущая длина строки}
    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)-1)
    

    К строкам можно применять операцию "+" – сцепление, например:

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

    Если длина сцепленной строки превысит максимально допустимую длину N, то "лишние" символы отбрасываются. Следующая программа, например, напечатает символ 1:

    var
    st: String [1];
    begin
    St: = '123';
    WriteLn(st)
    end.
    
    Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.