Udostępnij za pośrednictwem


strerror, _strerror, _wcserror, __wcserror

Pobiera ciąg z komunikatem o system (strerror, _wcserror) lub Formatuje ciąg z komunikatem o dostarczane przez użytkownika (_strerror, __wcserror).Dostępne są bezpieczniejsze wersje tych funkcji, zobacz 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
    Numer błędu.

  • strErrMsg
    Komunikat dostarczane przez użytkownika.

Wartość zwracana

Wszystkie te funkcje zwracać wskaźnik do ciągu komunikat o błędzie.Kolejne wywołania można zastąpić ten ciąg.

Uwagi

strerror Funkcję map errnum na ciąg komunikat o błędzie i zwraca wskaźnik do ciągu.Ani strerror ani _strerror faktycznie wyświetla komunikat:, które zostały wywołania funkcji wyjściowych, takich jak fprintf:

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

Jeśli strErrMsg jest przekazywany jako NULL, _strerror zwraca wskaźnik do ciąg, który zawiera komunikat o błędzie systemu ostatniego połączenia biblioteki, który powoduje błąd.Ten ciąg komunikat o błędzie zostaje zakończone przez znaku nowego wiersza ("\n").Jeśli strErrMsg nie jest równa NULL, następnie _strerror zwraca wskaźnik na ciąg, który zawiera (w kolejności) umieścić ciąg, dwukropka, spację, komunikat o błędzie systemu ostatniego połączenia biblioteki, który powoduje błąd i znaku nowego wiersza.Wiadomości ciąg może zawierać maksymalnie 94 znaków.

Numer błędu dla _strerror jest przechowywana w zmiennej numer błędu.Aby uzyskać dokładne wyniki, należy wywołać _strerror natychmiast po, procedury biblioteki zwraca błąd.W przeciwnym razie kolejnych wywołań strerror lub _strerror można zastąpić errno wartość.

_wcserrori __wcserror są wersjami całego znaku strerror i _strerrorodpowiednio.

_strerror, _wcserror, i __wcserror nie są częścią definicji ANSI; są one rozszerzenia Microsoft i firma Microsoft zaleca, aby używać ich miejscu kod przenośny.Zgodność ANSI, użyj strerror zamiast niego.

Można pobrać ciągów błędów, zaleca się strerror lub _wcserror zamiast makra przestarzały _sys_errlist i _sys_nerr i przestarzałe funkcji wewnętrznych __sys_errlist i __sys_nerr.

Mapowania procedur zwykłego tekstu

Procedura TCHAR.H

_UNICODE & _MBCS nie zdefiniowano

_MBCS zdefiniowano

_UNICODE zdefiniowano

_tcserror

strerror

strerror

_wcserror

Wymagania

Procedura

Wymagany nagłówek

strerror

< string.h >

_strerror

< string.h >

_wcserror, __wcserror

< string.h >

Aby uzyskać dodatkowe informacje o zgodności, zobacz Zgodność.

Przykład

Zobacz przykład dla perror.

Odpowiednik w programie .NET Framework

System::Exception::Message

Zobacz też

Informacje

Manipulowanie ciągami (CRT)

clearerr

ferror

perror, _wperror