다음을 통해 공유


clearerr

스트림에 대한 오류 표시기를 다시 설정합니다. 이 함수의 더 안전한 버전을 사용할 수 있습니다. 를 참조하세요 clearerr_s.

구문

void clearerr(
   FILE *stream
);

매개 변수

stream
FILE 구조체에 대한 포인터입니다.

설명

clearerr 함수는 stream에 대한 오류 표시기 및 파일 끝 표시기를 다시 설정합니다. 오류 표시기가 자동으로 지워지지 않습니다. 지정된 스트림에 대한 오류 표시기가 설정되면 해당 스트림에 대한 작업은 , 또는 fseekfsetposrewind 호출될 때까지 clearerr오류 값을 계속 반환합니다.

검사점 생성 시 streamNULL인 경우 Parameter Validation를 참조하세요. 계속 실행하도록 허용된 경우 이 함수는 errnoEINVAL로 설정하고 반환합니다. 코드 및 오류 코드에 대한 errno 자세한 내용은 상수(constants)를 참조 errno 하세요.

이 함수의 더 안전한 버전을 사용할 수 있습니다. 를 참조하세요 clearerr_s.

기본적으로 이 함수의 전역 상태는 애플리케이션으로 범위가 지정됩니다. 이 동작을 변경하려면 CRT 전역 상태를 참조하세요.

요구 사항

루틴에서 반환된 값 필수 헤더
clearerr <stdio.h>

호환성에 대한 자세한 내용은 호환성을 참조하세요.

예시

// crt_clearerr.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;
   // Create an error by writing to standard input.
   putc( 'c', stdin );
   if( ferror( stdin ) )
   {
      perror( "Write error" );
      clearerr( stdin );
   }

   // See if read causes an error.
   printf( "Will input cause an error? " );
   c = getc( stdin );
   if( ferror( stdin ) )
   {
      perror( "Read error" );
      clearerr( stdin );
   }
   else
      printf( "No read error\n" );
}

입력

n

출력

Write error: No error
Will input cause an error? n
No read error

참고 항목

오류 처리
스트림 I/O
_eof
feof
ferror
perror, _wperror