언어 자료구조 알고리즘/C11 표준 라이브러리 함수

feof 함수 [C언어 표준 라이브러리 함수 가이드]

언제나휴일 2016. 1. 3. 15:13
반응형

feof


헤더 파일

[언어 자료구조 알고리즘/C11 표준 라이브러리 함수] - STDIO.H


int feof(FILE * fp); 파일 스트림의 끝인지 테스트하는 함수
 
입력 매개 변수 리스트
fp 파일 스트림
반환 값
파일 스트림의 end of file 지시자가 설정 상태이면 0이 아닌 값
 
사용 예
//C언어 표준 라이브러리 함수 사용법 가이드
//int feof ( FILE * fp ); 파일 스트림의 끝인지 테스트하는 함수
//파일의 내용을 라인 번호를 추가하여 출력
#include <stdio.h>
int main (void)
{
    FILE * fp;
    int ch;
    int line_no = 0;
 
    fopen_s(&fp, "input.txt","rt");//읽기 모드로 파일 열기
    if (fp==NULL)
    {
        perror ("error fopen");
        return 0;
    }
    line_no++;
    printf("%4d: ",line_no);
    while( ! feof(fp) )//파일의 끝을 만날때까지 반복
    {
      ch = fgetc (fp);//입력 파일 스트림에서 문자 읽기
      putchar(ch);//표준 출력 스트림에 문자 출력
      if (ch == '\n')//개행 문자일 때
      {
          line_no++;//라인 번호를 1 증가
          printf("%4d: ",line_no);//라인 번호 출력
      }
    }
    fclose (fp);//입력 파일 스트림 닫기
    return 0;
}
 
input.txt 내용
//1. "Hello World"를 표준 출력 스트림(콘솔 화면)에 출력
#include <stdio.h> //2. 표준 입출력 헤더 포함문
 
void main(void)//3. 프로그램 진입점
{
    printf("Hello World\n");//4. 표준 출력 스트림에 문자열 출력
}
출력
1:. "Hello World"를 표준 출력 스트림(콘솔 화면)에 출력
2: #include <stdio.h> //2. 표준 입출력 헤더 포함문
3:
4: void main(void)//3. 프로그램 진입점
5: {
6:     printf("Hello World\n");//4. 표준 출력 스트림에 문자열 출력
7: }


사용한 함수

[언어 자료구조 알고리즘/C11 표준 라이브러리 함수] - fopen_s

[언어 자료구조 알고리즘/C11 표준 라이브러리 함수] - perror

[언어 자료구조 알고리즘/C11 표준 라이브러리 함수] - printf

[언어 자료구조 알고리즘/C11 표준 라이브러리 함수] - fgetc

[언어 자료구조 알고리즘/C11 표준 라이브러리 함수] - putchar

[언어 자료구조 알고리즘/C11 표준 라이브러리 함수] - fclose 


반응형