Скажем, у нас есть этот код C
:
int x[] = {1, 2, 3, 4, 5};
printf("%d", *(x + 1)); //prints 2
printf("%d", *(x + 500)); //prints 7209065 (...?)
Как вы можете видеть из второго вызова, он по-прежнему что-то возвращает ... но это мусор.
Поэтому я спрашиваю, как вы справляетесь с таким случаем в Си? то есть как вы узнаете, является ли возвращаемый элемент действительно элементом, который существует в массиве, или просто мусором?