Граничный указатель

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску

В области информатики граничный указатель (англ. bounded pointer) — указатель, дополненный добавочной информацией, обозначающей границы хранилища, внутрь которого указатель может ссылаться. Эта дополнительная информация иногда приобретает вид двух указателей, обозначающих верхний и нижний адреса хранилища, занятого объектом, на который указывает граничный указатель. Применение подобных указателей помогает обнаружить ошибки класса «выход за пределы массива».

Использование граничной информации делает возможным для компилятора генерировать код, проверяющий корректность расположения значения указателя в пределах указанных границ перед разыменованием указателя или изменением значения указателя. Если границы нарушены, то может возбуждаться определённый тип исключения. Это особенно полезно для таких конструкций данных как массивы в языке программирования Си.

Подобные указатели могут использоваться для массивов в языках Pascal и Fortran.