clearerr_s
Réinitialiser l’indicateur d’erreur pour un flux. Cette fonction est une version des améliorations de clearerr
sécurité décrites dans les fonctionnalités de sécurité du CRT.
Syntaxe
errno_t clearerr_s(
FILE *stream
);
Paramètres
stream
Pointeur désignant la structure FILE
Valeur retournée
Zéro si elle réussit ; EINVAL
si stream
c’est NULL
.
Notes
La fonction clearerr_s
réinitialise l’indicateur d’erreur et l’indicateur de fin de fichier pour stream
. Les indicateurs d’erreur ne sont pas effacés automatiquement ; une fois que l’indicateur d’erreur d’un flux spécifié est défini, les opérations sur ce flux continuent de retourner une valeur d’erreur jusqu’à ce que clearerr_s
, , clearerr
, fseek
, fsetpos
ou rewind
soit appelé.
Si stream
c’est NULL
le cas, le gestionnaire de paramètres non valide est appelé, comme décrit dans la validation des paramètres. Si l'exécution est autorisée à se poursuivre, cette fonction affecte la valeur errno
à EINVAL
et retourne EINVAL
.
Par défaut, l’état global de cette fonction est limité à l’application. Pour modifier ce comportement, consultez État global dans le CRT.
Spécifications
Routine | En-tête requis |
---|---|
clearerr_s |
<stdio.h> |
Pour plus d’informations sur la compatibilité, consultez Compatibility.
Exemple
// crt_clearerr_s.c
// This program creates an error
// on the standard input stream, then clears
// it so that future reads won't fail.
#include <stdio.h>
int main( void )
{
int c;
errno_t err;
// Create an error by writing to standard input.
putc( 'c', stdin );
if( ferror( stdin ) )
{
perror( "Write error" );
err = clearerr_s( stdin );
if (err != 0)
{
abort();
}
}
// See if read causes an error.
printf( "Will input cause an error? " );
c = getc( stdin );
if( ferror( stdin ) )
{
perror( "Read error" );
err = clearerr_s( stdin );
if (err != 0)
{
abort();
}
}
}
Entrée
n
Sortie
Write error: Bad file descriptor
Will input cause an error? n
Voir aussi
Gestion des erreurs
E/S de flux
clearerr
_eof
feof
ferror
perror
, _wperror
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour