ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • C/C++ puts(3), fputs(3)
    C,C++ & Linux 2020. 5. 22. 02:50
    728x90

    함수 기능

    파일에 줄 단위 문자열을 출력하는 함수입니다.

     

    puts() 는 stdout 파일에 출력합니다.

     

    함수 원형

    #include <stdio.h>
    
    int puts(const char *str);
    int fputs(const char *str, FILE *fp);

     

    매개변수

    str

    출력할 문자열

     

    fp

    대상 파일 포인터

     

    puts() 의 경우 자동적으로 stdout 이 지정됩니다.

    반환값

    성공 시 음이 아닌 정수 리턴

    에러 시 EOF 리턴

    예제

    #include <stdio.h>
    #include <stdlib.h>
    #include <unistd.h>
    
    int main(int argc, char *argv[]) {
        char buf[BUFSIZ];
        FILE *fp;
    
        // 파일을 읽기 + 쓰기모드로 열기
        if ((fp = fopen(argv[1], "w+")) == NULL) {
            fprintf(stderr, "fopen error\n");
            exit(1);
        }
    
        fputs("Input String >> ", stdout);
    	
        // 한 줄 입력
        gets(buf);
    	
        // 파일에 읽은 내용을 그대로 씀
        fputs(buf, fp);
    	
        // 파일 포인터 초기화
        rewind(fp);
    
        // 파일을 한 줄 읽어서
        fgets(buf, sizeof(buf), fp);
    	
        // 표준 출력에 출력
        puts(buf);
        fclose(fp);
        exit(0);
    }
    

     

    결과

     

     

     

     

     

     

     

     

     

     

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

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

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

    C/C++ fseek(3), fseeko(3)  (0) 2020.05.22
    C/C++ fread(3) fwrite(3)  (1) 2020.05.22
    C/C++ gets(3), fgets(3)  (0) 2020.05.22
    C/C++ putc(3), fputc(3), putchar(3)  (0) 2020.05.22
    C/C++ ungetc(3)  (0) 2020.05.22

    댓글

Designed by Tistory.