Язык:
Русский
English
Операторы PChar
Расширенный синтаксис (включаемый директивой {$X+}) поддерживает ряд новых операций с символьными указателями.
Операторы плюс (+) и минус (-) могут использоваться для увеличения и уменьшения значения смещения указателя.
Оператор минус (-) может использоваться для вычисления расстояния между значениями смещений двух символьных указателей.
Пусть P и Q являются значениями типа PChar, а I - значение типа Word, тогда допустимы следующие конструкции:
Конструкция Результат
P + I Добавление I к значению смещения P
I + P Добавление I к значению смещения P
P - I Вычитание I из значения смещения P
P - Q Вычитание значения смещения Q из значения смещения P
P + I, I + P
Операции P + I и I + P добавляют значение I к адресу, заданному указателем P, с созданием указателя, который указывает на I-й символ после P.
P - I
Операция P - I вычитает I из адреса, заданного указателем P, с созданием указателя, который указывает на I-й символ перед P.
P - Q
Операция P - Q вычисляет расстояние между Q (меньший адрес) и P (больший адрес), с получением значения типа Word, в котором находится число символов между Q и P.
Эта операция принимает, что P и Q указывают на один и тот же символьный массив. Если два символьных указателя указывают на различные символьные массивы, то результат непредсказуем.