1. 표준 입출력 라이브러리 (stdio)
ㅇ 다루기 쉽지 않은 저 수준(커널 수준)의 스트림을 쉽게 사용할 수 있도록 하는 인터페이스 제공
- 바이트 단위, 고정 길이 바이트, 줄 단위, 포멧 맞춤 입출력 등 다양함
ㅇ 例)
- 문자 단위
. 문자 단위의 입출력 함수 : getchar(), putchar()
. 문자열 출력 함수 : puts()
- 포멧 맞춤
. 포멧 맞춤 입출력 함수 : printf(), scanf() 등
- 파일 입출력
. 파일 열기/닫기 함수 : fopen(), fclose()
. 파일 읽기 함수 : fgetc(), fgets(), fread() 등
. 파일 쓰기 함수 : fputc(), fputs(), fwrite() 등
2. C 파일 처리
ㅇ 파일 입출력시, 스트림은, ☞ 스트림, 파일 포인터 참조
- 자동으로 스트림이 생성 않고, 먼저 스트림을 생성시켜야 함
ㅇ 파일 입출력 과정의 순서
- 파일 포인터 선언 → 파일 열기 → 읽기/쓰기 → 파일 닫기
ㅇ 파일 접근 방식의 구분
- 순차 접근 (Sequential Access)
- 직접 접근 (Direct Access)
3. C 파일 처리 함수 종류 : 파일 입출력 (stdio.h)
ㅇ 파일 열기,닫기 : fopen(), fclose()
ㅇ 파일 읽기,쓰기
- 파일로부터 한 문자 씩 읽기 : getc(), fgetc()
- 파일에 한 문자 씩 쓰기 : putc(), fputc()
- 파일로부터 문자열 읽기 : fgets()
- 파일에 문자열 쓰기 : fputs()
- 파일로부터 정해진 형식에 따라 읽기 : fscanf(fp)
- 파일에 정해진 형식에 따라 쓰기 : fprintf()
- 파일로부터 정해진 크기의 자료를 정해진 개수 만큼 읽기 : fread()
- 파일에 정해진 크기의 자료를 정해진 개수 만큼 쓰기 : fwrite()
ㅇ 파일 위치 제어
- 파일에서 입출력 위치를 이동 : fseek()
- 파일의 시작부터 fp 위치까지의 거리 : ftell(fp)
- 파일의 끝 여부를 판별 : feof()
ㅇ 파일 에러
- 파일의 입출력시 에러 발생 유무 조사 : ferror()
ㅇ 기타
- exit(), rewind(), ftell(), fflush(), fgetpos(), fsetpos(), ungetc(), setvbuf() 등