clearerr_sclearerr_s

스트림에 대한 오류 표시기를 다시 설정합니다.Resets the error indicator for a stream. CRT의 보안 기능에 설명된 대로 보안 기능이 향상된 clearerr 버전입니다.This is a version of clearerr with security enhancements as described in Security Features in the CRT.

구문Syntax

errno_t clearerr_s(
   FILE *stream
);

매개 변수Parameters

스트림stream
에 대 한 포인터 파일 구조Pointer to FILE structure

반환 값Return Value

성공 하면 0 EINVAL 하는 경우 스트림을 됩니다 NULL합니다.Zero if successful; EINVAL if stream is NULL.

설명Remarks

합니다 clearerr_s 함수에 대 한 파일 끝 표시기 및 오류 표시기 다시 설정 스트림합니다.The clearerr_s function resets the error indicator and end-of-file indicator for stream. 오류 표시기가 자동으로 취소 되지 않습니다. 지정 된 스트림에 대 한 오류 표시기 설정 되 면 해당 스트림의 작업을 계속 반환 될 때까지 오류 값 clearerr_s, clearerr하십시오 fseekfsetpos, 또는 rewind 라고 합니다.Error indicators are not automatically cleared; once the error indicator for a specified stream is set, operations on that stream continue to return an error value until clearerr_s, clearerr, fseek, fsetpos, or rewind is called.

하는 경우 스트림을 됩니다 NULL에 설명 된 대로 잘못 된 매개 변수 처리기가 호출 매개 변수 유효성 검사합니다.If stream is NULL, the invalid parameter handler is invoked, as described in Parameter Validation. 실행은 계속 하도록 허용 하는 경우이 함수를 설정 합니다 errnoEINVAL 반환 EINVAL합니다.If execution is allowed to continue, this function sets errno to EINVAL and returns EINVAL.

요구 사항Requirements

루틴에서 반환된 값Routine 필수 헤더Required header
clearerr_sclearerr_s <stdio.h><stdio.h>

호환성에 대한 자세한 내용은 호환성을 참조하세요.For additional compatibility information, see Compatibility.

예제Example

// 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();
      }
   }
}

입력Input

n

출력Output

Write error: Bad file descriptor
Will input cause an error? n

참고자료See also

오류 처리Error Handling
스트림 I/OStream I/O
clearerrclearerr
_eof_eof
feoffeof
ferrorferror
perror, _wperrorperror, _wperror