Computer >> 컴퓨터 >  >> 프로그램 작성 >> C 프로그래밍

C의 EOF, getc() 및 feof()

<시간/>

EOF

EOF는 파일 끝을 의미합니다. getc() 함수는 성공 시 EOF를 반환합니다.

다음은 C 언어로 된 EOF의 예입니다.

다음 내용의 "new.txt" 파일이 있다고 가정해 보겠습니다.

This is demo!
This is demo!

이제 예를 살펴보겠습니다.

예시

#include <stdio.h>
int main() {
   FILE *f = fopen("new.txt", "r");
   int c = getc(f);
   while (c != EOF) {
      putchar(c);
      c = getc(f);
   }
   fclose(f);
   getchar();
   return 0;
}

출력

This is demo!
This is demo!

위의 프로그램에서는 fopen()을 이용하여 파일을 연다. 정수 변수 c가 EOF와 같지 않으면 파일을 읽습니다.

FILE *f = fopen("new.txt", "r");
int c = getc(f);
while (c != EOF) {
   putchar(c);
   c = getc(f);
}

getc()

입력에서 단일 문자를 읽고 정수 값을 반환합니다. 실패하면 EOF를 반환합니다.

다음은 C 언어의 getc() 구문입니다.

int getc(FILE *stream);

다음은 C 언어의 getc() 예제입니다.

다음 내용이 포함된 "new.txt" 파일이 있다고 가정해 보겠습니다. -

This is demo!
This is demo!

이제 예를 살펴보겠습니다.

예시

#include <stdio.h>
int main() {
   FILE *f = fopen("new.txt", "r");
   int c = getc(f);
   while (c != EOF) {
      putchar(c);
      c = getc(f);
   }
   fclose(f);
   getchar();
   return 0;
}

출력

This is demo!
This is demo!

위의 프로그램에서는 fopen()을 이용하여 파일을 연다. 정수 변수 c가 EOF와 같지 않으면 파일을 읽습니다. getc() 함수는 파일에서 문자를 읽고 있습니다.

FILE *f = fopen("new.txt", "r");
int c = getc(f);
while (c != EOF) {
   putchar(c);
   c = getc(f);
}

feof()

feof() 함수는 EOF 후 파일의 끝을 확인하는 데 사용됩니다. 파일 표시기의 끝을 테스트합니다. 성공하면 0이 아닌 값을 반환하고 그렇지 않으면 0을 반환합니다.

다음은 C 언어의 feof() 구문입니다.

int feof(FILE *stream)

다음은 C 언어의 feof() 예입니다.

다음 내용이 포함된 "new.txt" 파일이 있다고 가정해 보겠습니다. -

This is demo!
This is demo!

이제 예를 살펴보겠습니다.

예시

#include <stdio.h>
int main() {
   FILE *f = fopen("new.txt", "r");
   int c = getc(f);
   while (c != EOF) {
      putchar(c);
      c = getc(f);
   }
   if (feof(f))
   printf("\n Reached to the end of file.");
   else
   printf("\n Failure.");
   fclose(f);
   getchar();
   return 0;
}

출력

This is demo!
This is demo!
Reached to the end of file.

위 프로그램에서 위 프로그램에서는 fopen()을 이용하여 파일을 연다. 정수 변수 c가 EOF와 같지 않으면 파일을 읽습니다. feof() 함수는 포인터가 파일 끝에 도달했는지 여부를 다시 확인합니다.

FILE *f = fopen("new.txt", "r");
int c = getc(f);
while (c != EOF) {
   putchar(c);
   c = getc(f);
}
if (feof(f))
printf("\n Reached to the end of file.");
else
printf("\n Failure.");