Инструменты для борьбы с повреждением стека в c ++

РЕДАКТИРОВАТЬ: Из-за правильного комментария к моему примеру я удалил его и превратил это в общий вопрос:

Иногда в своих проектах я сталкиваюсь с повреждением стека. Как бы я ни старался писать код, чтобы избежать этого, иногда это просто неизбежно. Но когда это произойдет, как с этим бороться?

Я нашел один макрос, данный молодцом в этом блоге: http://rxwen.blogspot.com/2009/04/detect-stack-corruption .html , который считывает значение регистра ebp для обнаружения повреждений.

Но наверняка появятся более сложные инструменты, которые помогут не стрелять себе в ногу. Я программирую в Windows, используя кодовые блоки и компилятор gcc. Причина, по которой я задаю этот вопрос, заключается в том, чтобы найти инструменты, которые я могу использовать в своей среде программирования, чтобы помочь мне обнаружить такие ошибки и исправить их. Какие-либо предложения?

Спасибо за любые ответы и за то, что нашли время прочитать мой вопрос.

8
задан Lefteris 18 January 2011 в 05:26
поделиться