본문 바로가기

공부기록

공부기록, 2021-10-05(c 파일 입출력)

 - c 파일 입출력
    - 2.7 파일 스트림(stream), 파일 입출력Permalink
2.7.1 fopenPermalink
#include
FILE * fopen(const char * filename, const char * mode);
성공 시 해당 파일의 FILE 구조체 변수 주소 값 반환, 실패 시 NULL 포인터 반환
2.7.2 fputcPermalink
#include
int fputc(int c, FILE * pFile);
성공 시 0, 실패 시 EOF(-1)
2.7.3 fgetcPermalink
#include
int fgetc(FILE * pFile);
문자를 하나가 반환됨. (여러 문자가 있을 시, 여러 번 호출해서 읽어야함)
성공 시 0, 실패 시 EOF(-1)
또한 성공 시, 파일 위치 지시자가 다음 문자를 가리키게 됨.
2.7.4 feofPermalink
#include
int feof(FILE * pFile);
파일의 끝에 도달한 경우 0이 아닌 값 반환
2.7.5 fread(바이너리 데이터 입력)Permalink
#include
size_t fread(void * buffer, size_t size, size_t count, FILE * stream);
size 크기의 데이터 count개를 stream으로부터 읽어 들여서 buffer에 저장
성공 시 전달인자 count, 실패 또는 파일의 끝 도달 시 count보다 작은 값 반환
count보다 작은 값 반환 시, feof를 이용하여 실패 또는 파일의 끝에 도달했는지 확인해야함.
2.7.6 fwrite(바이너리 데이터 출력)Permalink
#include
size_t fwrite(void * buffer, size_t size, size_t count, FILE * stream);
size 크기의 데이터 count개를 buf으로부터 읽어 들여서 fp에 저장
성공 시 전달인자 count, 실패 시 count보다 작은 값 반환
2.7.7 fflushPermalink
#include
int fflush(FILE * pFile);
성공 시 0, 실패 시 EOF(-1)
2.7.8 fclosePermalink
#include
int fclose(FILE * pFile);
성공 시 0, 실패 시 EOF(-1)
2.7.9 fprintf(파일데이터 출력)Permalink
#include
int fprintf(FILE * pFile, “…”, …);
2.7.10 fscanf(파일데이터 읽기)Permalink
#include
int fscanf(FILE * pFile, “…”, …);
2.7.11 fseek(파일 위치 지시자 이동)Permalink
#include
int fseek(FILE * stream, long offset, int wherefrom); ``` stream으로 전달된 파일 위치 지시자를 wherefrom에서부터 offset 바이트 만큼 이동
wherefrom SEEK_SET : 파일 맨 앞에서부터 이동 시작 (0) SEEK_CUR : 현재 위치에서부터 이동 시작 (1) SEEK_END : 파일 맨 끝에서부터 이동 시작 (2) ```
## 자주 하는 실수
  - 기본기능으로 때우려고함
## 큐
  - 어차피 헷갈리니 자주보고쓰자
## 내가 모르는 것
  - c 파일 입출력