strerror, _strerror, _wcserror, __wcserror
Obtenez un message d'erreur système (strerror, _wcserror) ou des copies un message d'erreur défini par l'utilisateur (_strerror, __wcserror).plus les versions sécurisées de ces fonctions sont disponibles ; consultez 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
);
Paramètres
errnum
Numéro de l'erreur.strErrMsg
message écrit par l'utilisateur.
Valeur de retour
Toutes ces fonctions retournent un pointeur à la chaîne de message d'erreur.les appels suivants peuvent remplacer la chaîne.
Notes
La fonction d' strerror mappe errnum à une chaîne de message d'erreur, qui retourne un pointeur à la chaîne.ni strerror ni _strerror n'imprime réellement le message : Pour qui, vous devez appeler une fonction de sortie semblable fprintf:
if (( _access( "datafile",2 )) == -1 )
fprintf( stderr, _strerror(NULL) );
Si strErrMsg est passé comme NULL, _strerror retourne un pointeur vers une chaîne contenant le message d'erreur système pour le dernier appel de bibliothèque qui a produit une erreur.la chaîne de message d'erreur est terminée par le caractère de saut de ligne ("\ n ").Si strErrMsg n'est pas égal à NULL, alors _strerror retourne un pointeur vers une chaîne contenant (dans l'ordre) votre message de chaîne, deux-points, un espace, le message d'erreur système pour le dernier appel de bibliothèque pour produire une erreur, et un caractère de saut de ligne.Votre message de chaîne peut être, au plus, 94 caractères.
Le numéro d'erreur réel pour _strerror est stocké dans errnovariable.Les messages d'erreur système sont accessibles via _sys_errlistvariable, qui est un tableau de nombres par erreur classé par messages._strerror accède au message d'erreur adapté à l'aide de la valeur d' errno comme index à _sys_errlistvariable.La valeur de _sys_nerr variable est définie comme un nombre maximal d'éléments du tableau d' _sys_errlist .Pour produire des résultats exacts, l'appel _strerror immédiatement après une routine de bibliothèque retourne avec une erreur.Sinon, les appels suivants à strerror ou l' _strerror peuvent remplacer la valeur d' errno .
_wcserroret __wcserrorsont des versions à caractères larges d' strerroret d' _strerror, respectivement.
_strerror, _wcserror, et __wcserrorne font pas partie de la définition ANSI mais sont plutôt des extensions Microsoft à celui-ci.Ne les utilisez pas où la portabilité est souhaitée ; pour la compatibilité ANSI, utilisez strerror à la place.
mappages de routines de texte générique
routine de TCHAR.H |
_MBCS & de _UNICODE non défini |
_MBCS défini |
_UNICODE défini |
---|---|---|---|
_tcserror |
strerror |
strerror |
_wcserror |
Configuration requise
routine |
en-tête requis |
---|---|
strerror |
<string.h> |
_strerror |
<string.h> |
_wcserror, __wcserror |
<string.h> |
Pour des informations de compatibilité supplémentaires, consultez compatibilité dans l'introduction.
Exemple
Consultez l'exemple pour perror.
Équivalent .NET Framework
System : : exception : : message