티스토리 뷰
반응형
//141005 Source by YoWu(uyu423@gmail.com) #include "stdio.h" #include "stdlib.h" int main(void) { FILE *rfp, *wfp; char buf[BUFSIZ]; int n; if((rfp = fopen("abc.txt", "r")) == NULL) { perror("fopen: abc.txt"); exit(1); } if((wfp = fopen("ac.txt", "w")) == NULL) { perror("fopen : ac.txt"); exit(1); } while((n=fread(buf, sizeof(char) * 2, 1, rfp)) > 0) { fwrite(buf, sizeof(char), n, wfp); } fclose(rfp); fclose(wfp); return 0; }
위 예제는 유닉스 시스템 프로그래밍 2장 연습문제의 4번에 해당합니다. 문제는 대충 문자 두개가 있을 때 앞에 하나만 출력하는 그런 문제
fread 함수 원형
size_t fread ( void * ptr, size_t size, size_t count, FILE * stream );
ptr : 저장할 버퍼
size : 읽어올 데이터 크기
count : 읽어올 데이터 갯수
stream : 읽어올 파일 디스크립터
fwite 함수 원형
size_t fwrite ( const void * ptr, size_t size, size_t count, FILE * stream );
ptr : 읽어올 버퍼
size : 파일 디스크립터에 기록할 데이터 크기
count : 기록할 데이터 갯수
stream : 기록할 디스크립터
반응형
'컴퓨터공학' 카테고리의 다른 글
간단한 단방향 연결 리스트(Linked List) 예제 및 설명 (C 언어) (0) | 2016.04.15 |
---|---|
스택(Stack) 활용 미로 길찾기 프로그램 (C lang) (1) | 2015.04.14 |
[문제해결기법] 05. 고장난 카운터 (0) | 2014.10.28 |
[UNIX / LINUX] 저수준 파일 입출력(open, write, read) 예제 (0) | 2014.10.05 |
시스템 호출(System Call)과 라이브러리 함수(Library Function) 차이 (0) | 2014.09.24 |
getopt() 함수 예제 (0) | 2014.09.24 |
[알고리즘 연습문제] Letter Bank (0) | 2014.09.22 |