strerror, _strerror, _wcserror, __wcserror
Получено сообщение об ошибке системы (strerror" _wcserror) или типом (передаваемый пользователем сообщение об ошибке_strerror" __wcserror).Более безопасные версии этих функций доступны; см. strerror_s, _strerror_s, _wcserror_s, __wcserror_s .
char *strerror(
int errnum
);
char *_strerror(
const char *strErrMsg
);
wchar_t * _wcserror(
int errnum
);
wchar_t * __wcserror(
const wchar_t *strErrMsg
);
Параметры
errnum
Номер ошибки.strErrMsg
Передаваемый пользователем сообщение.
Возвращаемое значение
Все эти функции возвращают указатель на строку сообщения об ошибке.Последующие вызовы могут перезаписать строку.
Заметки
strerror сопоставления функции errnum в строку сообщения об ошибке, возвращая указатель на строку.Ни одного strerror ни _strerror фактически печатает сообщение: Для этого необходимо вызвать функцию как output fprintf.
if (( _access( "datafile",2 )) == -1 )
fprintf( stderr, _strerror(NULL) );
If strErrMsg передает как NULL" _strerror возвращает указатель на строку, содержащую сообщение об ошибке системы для последнего вызова библиотеки, вызвавшего ошибку.Строка сообщения об ошибке завершается символом перевода строки (\ n ").If strErrMsg не равно NULLпосле этого _strerror возвращает указатель на строку, содержащую (в порядке сообщения строки), двоеточие, пробел, сообщение о системной ошибке для последнего вызова библиотеки формирование ошибку, а символ перевода строки.Ваше сообщение строки может быть не более 94 символов.
Фактический номер ошибки _strerror хранит в переменной errno.Системные сообщения об ошибках осуществляется через переменную _sys_errlistмассив сообщений, приказал номеру ошибки._strerror обращается к соответствующее сообщение об ошибке с помощью errno значение переменной в качестве индекса _sys_errlist.Значение переменной _sys_nerr определяет, как максимальное количество элементов в _sys_errlist массив.Предоставить явные вызов _strerror сразу после библиотечная процедура возвращает с ошибкой.В противном случае последующие вызовы strerror OR _strerror можно переписать errno значения.
_wcserrorи __wcserrorверсия расширенных символов strerrorи _strerrorсоответственно.
_strerror" _wcserrorи __wcserrorне находится часть определения ANSI вместо этого расширения microsoft.Не используйте их где переносимость пожелана; для совместимости ANSI, используйте strerror вместо этого.
Сопоставления подпрограммы Родов-Текста
Подпрограмма TCHAR.H |
_MBCS не заданные _UNICODE & |
Указанный символ _MBCS |
Указанный _UNICODE |
---|---|---|---|
_tcserror |
strerror |
strerror |
_wcserror |
Требования
Процедура |
Обязательный заголовок |
---|---|
strerror |
<string.h> |
_strerror |
<string.h> |
_wcserror, __wcserror |
<string.h> |
Дополнительные сведения о совместимости см. Совместимость во введении.
Пример
См. пример perror.
Эквивалент в .NET Framework
System:: исключение:: Сообщение