Проверка параметров

Большая часть функций CRT с улучшенной безопасностью и многие из существующих функций проверяют свои параметры.Это может включать проверку указателей на значение NULL, проверка того, что целые числа попадают в допустимый диапазон, или проверку того, что значения перечислений являются допустимыми.Когда найден недопустимый параметр, выполняется обработчик недопустимого параметра.

Функция обработчика недопустимого параметра

При нахождении недопустимого параметра задача среды выполнения языка C состоит в вызове назначенного на данный момент обработчика недопустимого параметра.По умолчанию недопустимый параметр вызывает механизм создания отчетов о сбоях программы "Доктор Ватсон", который аварийно завершает приложение и спрашивает пользователей, хотят ли они отправить аварийные дампы Майкрософт для анализа.В режиме отладки недопустимый параметр также приводит к ошибке в утверждении.

Это поведение может быть изменено с помощью функции _set_invalid_parameter_handler для задания обработчику недопустимого параметра вашей собственной функции.Если указанная функция не завершает работу приложения, контроль возвращается к функции, получившей недопустимые параметры, и эти функции нормально прекратят выполнение, возвратят код ошибки и установят errno в код ошибки.Во многих случаях значение errno и возвращаемое значение оба равны EINVAL, что указывает на недопустимый параметр.В некоторых случаях возвращается более конкретный код ошибки, например EBADF для неправильного указателя на файл, переданного в качестве параметра.Дополнительные сведения по errno см. errno, _doserrno, _sys_errlist и _sys_nerr.

См. также

Ссылки

Функции библиотеки CRT

Основные понятия

Средства безопасности в CRT