Поделиться через


_set_error_mode

Изменяет __error_mode для указания расположения не по умолчанию, где среда выполнения C записывает сообщение об ошибке для ошибок, которые могут вызвать завершение программы.

Важно!

Этот API не может использоваться в приложениях, выполняемых в Среда выполнения Windows.Дополнительные сведения см. в статье Функции CRT, которые не поддерживаются с ключом /ZW.

int _set_error_mode(
   int modeval 
);

Параметры

  • modeval
    Назначение сообщений об ошибках.

Возвращаемое значение

Возвращает старый параметр или -1 при возникновении ошибки.

Заметки

Управляет приемником потока ошибок, устанавливая значение __error_mode. Например, можно напрямую вывести в стандартный поток ошибок или использовать API MessageBox.

Параметр modeval может иметь одно из следующих значений.

Параметр

Описание

_OUT_TO_DEFAULT

Приемник ошибок определяется __app_type.

_OUT_TO_STDERR

Приемник ошибок является стандартной ошибкой.

_OUT_TO_MSGBOX

Приемник ошибок является окном сообщения.

_REPORT_ERRMODE

Сообщить о текущем значении __error_mode.

Если передается значение, отличное от перечисленных, вызывается обработчик недопустимого параметра, как описано в разделе Проверка параметров. Если выполнение может быть продолжено, то_set_error_mode устанавливает errno в EINVAL и возвращает -1.

При использовании с assert, _set_error_mode отображает невыполненное утверждение в диалоговом окне и предоставляет возможность выбора кнопки Ignore, таким образом, можно продолжить выполнение программы.

Требования

Подпрограмма

Обязательный заголовок

_set_error_mode

<stdlib.h>

Пример

// crt_set_error_mode.c
// compile with: /c
#include <stdlib.h>
#include <assert.h>

int main()
{
   _set_error_mode(_OUT_TO_STDERR);
   assert(2+2==5);
}
  

См. также

Ссылки

assert (CRT)