ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • C/C++ rewind(3)
    C,C++ & Linux 2020. 5. 22. 11:54
    728x90

    함수 기능

    파일 오프셋을 맨 처음으로 돌려주는 함수입니다.

     

    함수 원형

    #include <stdio.h>
    
    void rewind(FILE *fp);

     

    매개변수

    fp

    파일 오프셋을 초기화할 대상 파일 포인터

     

    예제

    #include <stdio.h>
    #include <stdlib.h>
    #include <unistd.h>
    
    
    int main(int argc, char *argv[]) {
        char *fname = "ssu_test.txt";
        FILE *fp;
        char buf[10];
    
        fp = fopen(fname, "r");
        
        // 처음 10글자를 읽고
        if (fread(buf, sizeof(buf), 1, fp) != 1) {
            fprintf(stderr, "read error\n");
            exit(1);
        }
    
        // 화면에 출력
        fwrite(buf, sizeof(buf), 1, stdout);
        putchar('\n');
    
        // 파일 오프셋 초기화했으므로 다시 처음부터 읽게됨
        rewind(fp);
    
        // 처음 10글자 읽고 화면에 출력
        fread(buf, sizeof(buf), 1, fp);
        fwrite(buf, sizeof(buf), 1, stdout);
        putchar('\n');
        exit(0);
    }
    

     

    결과

     

     

     

     

     

     

     

     

     

     

    리눅스시스템프로그래밍 저자 : 홍지만
    https://book.naver.com/bookdb/book_detail.nhn?bid=14623672

    책에 기술된 예제 프로그램입니다. 책 내부에는 훨씬 더 많은 자료가 있습니다. (개인적으로 좋았습니다.)

    'C,C++ & Linux' 카테고리의 다른 글

    C/C++ printf(3), fprintf(3)  (0) 2020.05.22
    C/C++ fgetpos(3), fsetpos(3)  (0) 2020.05.22
    C/C++ ftell(3), ftello(3)  (0) 2020.05.22
    C/C++ fseek(3), fseeko(3)  (0) 2020.05.22
    C/C++ fread(3) fwrite(3)  (1) 2020.05.22

    댓글

Designed by Tistory.