_혀니 2022. 8. 12. 13:39
728x90
반응형

feof()함수의 올바른 사용법

  • 대부분 사용하는 흔한 방법은 이것이다.
    while(!feof(fp)){
    //파일 읽기
    //코드 실행
    }
    그러나 C의 feof에서는 마지막 함수가 실패할 때 true를 리턴하기 때문에
    파일 포인터가 끝을 가리켜도 코드는 한번 더 실행된다.
    그래서 마지막 숫자가 중복으로 읽힐 수 있다.
  • 해결 방법
    while(1){ //파일 읽기
    if(feof(fp)) break; //코드 실행
    } 
    이렇게 하면 코드가 한번 더 실행되는 것을 방지할 수 있다.
728x90
반응형