Доступ за пределами элементов динамически распределенных массивов / без SegFault

Я разрабатываю программу на C, которая использует массив связанных списков (примитивная хеш-таблица) в качестве типа данных для представления определенной информации о дате. Массив имеет двенадцать элементов, соответствующих месяцам года, и каждый месяц имеет связанный список, который содержит узлы данных.

Я разработал модуль, который использовал этот тип данных, и он работал нормально. Позже я обнаружил, что у меня есть доступ к элементам массива, которые находятся за пределами (например, доступ к 12-му элементу по индексу 12 вместо 11). Но программа работала последовательно, без инцидентов. Я никогда не получал ошибку сегментации. С тех пор я исправил ошибку кодирования. Кто-нибудь может объяснить, почему доступ к внешним элементам не привел бы к segfault?

Это не первый раз, когда это случилось. Я создал динамически размещаемый многомерный массив, и для тестирования я попытался получить доступ к элементам за пределами. Программа работала нормально, давала точные результаты и в большинстве случаев не вызывала ошибок. Единственный раз, когда я его достиг, мне пришлось попытаться получить доступ к элементам, выходящим за границы.

(Эти программы в настоящее время являются приложениями консоли Windows для тестирования. Я компилирую с MinGW. Я могу включить код, если это будет полезно.)

Ответы на вопрос(4)

Ваш ответ на вопрос