Sdílet prostřednictvím


strerror, _strerror, _wcserror, __wcserror

Chybová zpráva systému (strerror, _wcserror) nebo vytiskne uživatelský chybová zpráva (_strerror, __wcserror).Bezpečnější verze tyto funkce jsou k dispozici; see 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 
);

Parametry

  • errnum
    Číslo chyby.

  • strErrMsg
    Zpráva zadaných uživatelem.

Vrácená hodnota

Tyto funkce vrátí řetězec chybová zpráva ukazatel.Následující volání lze přepsat řetězec.

Poznámky

strerror Funkci mapy errnum řetězec chybová zpráva, vrací ukazatel na řetězec.Ani strerror ani _strerror skutečně vytiskne zprávu:, potřebujete například volání funkce jazyka výstup fprintf:

if (( _access( "datafile",2 )) == -1 )
   fprintf( stderr, _strerror(NULL) );

Pokud strErrMsg je předán jako NULL, _strerror vrací ukazatel na řetězec obsahující systém chybovou zprávu pro poslední volání knihovny, který je chyba.Chybová zpráva řetězec ukončen znakem nového řádku (\n).Pokud strErrMsg není rovno NULL, pak _strerror vrací ukazatel na řetězec obsahující (v pořadí) řetězce zprávy, dvojtečkou, mezera, chybová zpráva systému pro poslední volání knihovny chybu a znak nového řádku.Řetězce zprávy může být nanejvýš 94 znaků.

Skutečná chyba číslo pro _strerror je uložena v proměnné kód chyby.Chybové zprávy systému, které jsou přístupné prostřednictvím proměnné _sys_errlist, což je pole zprávy seřazený podle čísla chyby._strerrorpřistupuje k této chybě pomocí errno hodnotu jako proměnná index _sys_errlist.Hodnota proměnné _sys_nerr je definován jako maximální počet prvků _sys_errlist pole.Chcete-li dosáhnout přesných výsledků volání _strerror ihned po rutina knihovny vrátí chybu.V opačném případě následné volání na strerror nebo _strerror lze přepsat errno hodnotu.

_wcserrora __wcserrorjsou verze celého znaku strerrora _strerror, resp..

_strerror, _wcserror, a __wcserrornejsou součástí definice ANSI, ale místo toho jsou rozšíření Microsoft.Nepoužívejte je kde je žádoucí přenositelnost; ANSI kompatibility použít strerror místo.

Obecný Text rutinní mapování

TCHAR.Rutina H

_UNICODE & _MBCS není definován

_MBCS, definice

_UNICODE, definice

_tcserror

strerror

strerror

_wcserror

Požadavky

Rutina

Požadované záhlaví

strerror

<string.h>

_strerror

<string.h>

_wcserror, __wcserror

<string.h>

Další informace o kompatibilitě, viz Compatibility v úvodu.

Příklad

Viz příklad pro perror.

Ekvivalent v rozhraní .NET Framework

System::Exception::Message

Viz také

Referenční dokumentace

Manipulaci s řetězci (CRT)

clearerr

ferror

perror _wperror