Почему переполнение буфера вызывает ошибки сегментации при доступе к целому числу?
Во время вызова функции B () из функции A (), B () выделяет массив из 100 символов и заполняет его несколько раз, в том числе один раз строкой из 101 символа и один раз строкой из 110 символов. Это очевидная ошибка.
Позже, функция A () пытается получить доступ к совершенно не связанной переменной int i, и возникает ошибка сегментации.
Я понимаю, почему происходит переполнение буфера, но почему я получаю ошибку сегментации, когда я получаю доступ к этому целому числу? Почему я непросто получить данные мусора?