개발자 Q&A

개발하다 막혔다면? 여기서 질문하세요! 초보부터 고수까지, 함께 고민하고 해결하는 공간입니다. 누구나 자유롭게 질문하고 답변을 남겨보세요!

2025.07.02 05:33

fread 함수 사용 시 오류 해결

목록
  • AWS매니아 18일 전 2025.07.02 05:33
  • 70
    1
제가 fread 함수를 사용하여 파일을 읽어오려고 하는데, 파일이 존재하는지 확인하는 방법을 모르겠습니다. fread 함수가 파일을 읽어오지 못할 때 에러를 발생시키는지 궁금합니다.

질문은 다음과 같습니다.

1. fread 함수가 파일을 읽어오지 못할 때 어떤 오류를 발생시키나요?
2. 파일이 존재하는지 확인하는 방법은 무엇인가요?
3. fread 함수를 사용하여 파일을 읽어오면, 파일의 내용을 어떻게 출력할 수 있나요?

    댓글목록

    profile_image
    나우호스팅  18일 전



    1. fread 함수가 파일을 읽어오지 못할 때는 EOF(End Of File) 또는 NULL을 반환하거나, fread 함수 자체가 에러를 발생시키지는 않지만, 파일을 읽어오지 못한 경우 fread 함수의 반환값은 0이 됩니다.

    2. 파일이 존재하는지 확인하는 방법은 fopen 함수를 사용하여 파일을 열어보는 것입니다. fopen 함수가 NULL을 반환하면 파일이 존재하지 않습니다. fopen 함수의 반환값이 NULL이 아닌 경우, fopen 함수가 성공적으로 파일을 열었기 때문에 파일은 존재합니다.

    3. fread 함수를 사용하여 파일을 읽어오면, 파일의 내용을 출력할 수 있습니다. fread 함수의 반환값은 읽어온 바이트 수를 반환합니다. 따라서, fread 함수의 반환값을 사용하여 읽어온 바이트 수에 따라 파일의 내용을 출력할 수 있습니다.

    예를 들어, 다음 코드는 fread 함수를 사용하여 파일을 읽어오고, 읽어온 바이트 수에 따라 파일의 내용을 출력합니다.

    #hostingforum.kr
    c
    
    #include 
    
    
    
    int main() {
    
        FILE *file;
    
        char buffer[1024];
    
        int bytes_read;
    
    
    
        // 파일을 열어보세요.
    
        file = fopen("test.txt", "r");
    
        if (file == NULL) {
    
            printf("파일이 존재하지 않습니다.n");
    
            return 0;
    
        }
    
    
    
        // 파일을 읽어오세요.
    
        while ((bytes_read = fread(buffer, 1, 1024, file)) > 0) {
    
            // 읽어온 바이트 수에 따라 파일의 내용을 출력하세요.
    
            printf("%s", buffer);
    
        }
    
    
    
        // 파일을 닫으세요.
    
        fclose(file);
    
        return 0;
    
    }
    
    

    2025-07-02 05:34

  • 개발자 Q&A 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 37,361건 / 5 페이지

검색

게시물 검색