Блуждающие указатели С

Недавно узнал, что в С есть так называемые блуждающие указатели. Что это за указатели и зачем они нужны?

Блуждающие указатели являются достаточно распространённой ошибкой разработчиков, которую, кстати, очень непросто обнаружить. Блуждающий (или дикий, зависший) указатель возникает когда после удаления объекта оператором delete этому указателю нельзя присвоить значение 0. При попытке использовать такой указатель в дальнейшем результат может оказаться непредсказуемым. В лучшем случае программа просто выдаст сообщение об ошибке.

Например, рассмотрим ситуацию: почтовая служба переехала в новый офис, но вы продолжаете звонить по её старому номеру. В случае если номер просто отключён, вы получите, максимум что, оповещение что номер не действителен. А представьте ка ситуацию, что теперь этот номер пренадлежит военкомату, или ещё чему-то такого рода...

Одним словом, нужно быть очень осторожным при использовании указателей, к которым применялся оператор delete. Указатель по прежнему будет содержать адрес области памяти, однако по этому адресу уже могут находиться другие данные. В этом случае обращение по указанному адресу может привести к аварийному завершению программы.