Практическое руководство. Настройка проверок во время выполнения машинного кода
Этот раздел применим к:
Выпуск |
Visual Basic |
C# |
F# |
C++ |
Web Developer |
---|---|---|---|---|---|
Express |
Только машинные коды |
||||
Pro, Premium и Ultimate |
Только машинные коды |
В Visual C++ можно использовать проверки в машинных кодах runtime_checks для обнаружения таких распространенных ошибок, возникающих на этапе выполнения, как:
Повреждение указателя стека;
Переполнение локальных массивов;
Повреждение стека;
Зависимости от неинициализированных локальных переменных;
Потеря данных при присваивании переменным меньшего размера.
Попытка использования опции /RTC с оптимизированным построением (/O) приведет к ошибке компилятора. Директивы runtime_checks при оптимизированном построении игнорируются.
Если осуществляется отладка программы с включенным режимом проверки во время выполнения, по умолчанию при возникновении ошибки во время выполнения программа будет прервана и произойдет возврат в отладчик. Это используемое по умолчанию поведение можно изменить для любой проверки во время выполнения. Дополнительные сведения см. в разделе Обработка исключений (отладка).
В приведенной ниже процедуре описано, как включить в отладочном построении проверку в машинных кодах во время выполнения, и как изменить поведение проверки в машинных кодах во время выполнения.
Другие разделы, представленные здесь, содержат следующие сведения:
Настройка проверки кода во время выполнения с библиотекой среды выполнения языка C
Использование проверки кода во время выполнения без библиотеки среды выполнения языка C
Включение проверок в машинных кодах во время выполнения в отладочном построении
- Используйте опцию /RTC и компоновку с отладочной версией библиотеки времени выполнения языка С (например, /MDd).
Изменение порядка проверки в машинных кодах во время выполнения
- Используйте директиву runtime_checks.
См. также
Задачи
Образец RTC: проверка ошибок во время выполнения