Шаг 55.
Операции над операндами типа PChar

    На этом шаге мы перечислим функции, обрабатывающие значения типа PChar.

    Напомним, что тип PChar является специальным указательным типом, введеным для поддержки строк с завершающим нулем и имеющим следующее описание:

    type PChar = ^Char;

    Object Pascal при включенной директиве {$Х+} позволяет использовать для работы с указателями типа PChar дополнительные, по сравнению с другими указательными типами, операции суммирования (+) и вычитания (-).

    Эти операции используются для увеличения и уменьшения смещения указателя на заданную величину. Кроме того, операцию вычитания допускается применять для вычисления разности смещений двух указателей типа PChar.

procedure  TForm1.FormCreate(Sender:   TObject); 
var
    Str1, Str2, Res  :  PChar;
    i, j : Word; 
begin
    .  .  .  .  
    Res := Str1 + i;  //Res будет указывать на i символов дальше, чем Str1.
    Res := Str2 - i;  //Res будет указывать на i символов ближе, чем Str2.
    j := Strl - Str2; //j будет равняться числу символов, расположенных 
                      //между символами, на которые указывают Strl и Str2. 
                      //Strl и Str2 должны указывать на  один и 
                      //тот же символьный массив. 
end;

    Стандартный синтаксис Object Pascal позволяет при сравнении указателей определять только их равенство или неравенство. Расширенный синтаксис (при включенной директиве {$Х+}) допускает к значениям типа PChar применять также и операции <, >, <= и >= . Но, при условии, что два сравниваемых указателя указывают на один и тот же массив символов.

    Для поддержки операций со строками с завершающим нулем в Object Pascal используются следующие функции стандартного модуля SysUtils:

    На следующем шаге мы рассмотрим операции над множествами.




Предыдущий шаг Содержание Следующий шаг