Recommanded Free YOUTUBE Lecture: <% selectedImage[1] %>
Docbook 원문

feof(3)

1장. feof(3)

차례
1.1절. 사용법
1.2절. 설명
1.3절. 에러
1.4절. 예제
1.5절. 참고문헌

스트림 상태를 검사하고 리셋한다.


1.1절. 사용법

#include <stdio.h>

void clearerr( FILE *stream);
int feof( FILE *stream);
int ferror( FILE *stream);
int fileno( FILE *stream);
		


1.2절. 설명

clearerr()함수는 EOF를 지우고 stream를 위한 에러 지시자는 스트림이 가리킨다.

feof()함수는 stream이 가리키는 스트림이 EOF인지를 검사하고, 만약 EOF라면 0이 아닌 값을 반환한다. EOF는 clearerr()함수에 의해서만 지워질 수 있다.

ferror()함수는 stream이 가리키는 스트림의 에러 지시자를 검사하고, 만약 에러가 설정되어 있다면 0이 아닌 값을 반환한다. 에러지시자는 clearerr()함수에 의해서만 지워질 수 있다.

fileno()함수는 stream에 대한 정수형의 파일 지정자를 반환한다.


1.3절. 에러

이들 함수는 실패해서는 안되며 errno를 설정하지 않는다.


1.4절. 예제

#include <stdio.h>
#include <stdlib.h>
int main()
{
    FILE *fp = NULL;
    char buf[256];

    if ((fp = fopen("zombie.c", "r")) == NULL)
    {
        perror("file open error ");
        exit(0);
    }

    while(!feof(fp))
    {
        memset(buf, 0x00, 256);
        fgets(buf, 255, fp);
        printf("%s", buf);
    }
    printf("File no : %d\n",fileno(fp));
    fclose(fp);
}