В информатике термин «диапазон» может относиться к одному из трех понятий:
Диапазон переменной задается как набор возможных значений, которые может содержать эта переменная. В случае целого числа определение переменной ограничено только целыми числами, а диапазон будет охватывать все числа в пределах своего диапазона (включая максимум и минимум). Например, диапазон знаковой 16 -битной целой переменной — это все целые числа от −32 768 до +32 767.
Когда массив численно индексирован, его диапазон — это верхняя и нижняя границы массива. В зависимости от среды, возникнет предупреждение, фатальное исключение или непредсказуемое поведение, если программа попытается получить доступ к элементу массива, который находится за пределами диапазона. В некоторых языках программирования , таких как C , массивы имеют фиксированную нижнюю границу (ноль) и будут содержать данные в каждой позиции до верхней границы (поэтому массив с 5 элементами будет иметь диапазон от 0 до 4). В других, таких как PHP , массив может иметь дыры, где не определен ни один элемент, и поэтому массив с диапазоном от 0 до 4 будет иметь до 5 элементов (и минимум 2).
Другое значение range в информатике — альтернатива iterator . При использовании в этом смысле range определяется как «пара итераторов begin/end, упакованных вместе». [1] Утверждается [1] , что «диапазоны — это более совершенная абстракция» (по сравнению с итераторами) по нескольким причинам, включая лучшую безопасность.
В частности, такие диапазоны поддерживаются в C++20 , [2] библиотеках Boost C++ [3] и стандартной библиотеке D. [4]