본문 바로가기
TIL/따배씨

파일입출력의 작동원리 (2021-01-22~2021-01-23)

by Dev_Dank 2021. 1. 22.

13.1 파일 입출력의 작동 원리

C언어로 프로그램을 작성하고 실행하면 운영체제와의 사이에 스트림이 3개(stdout, stderr, stdin)가 열린다. 

printf같이 화면에 출력하는 함수는 내부적으로 stdout스트림을 사용

scanf같이 입력을 받는 함수는 stdin사용

stderr은 프로그래머가 에러를 보내야 할때 사용

어떨때는 파일에 데이터를 저장하거나 불러오고 싶을때가 있음. 
C에서는 파일입출력을 일종의 스트림으로 다룸. 

C언어로 작성된 프로그램이 파일과 상호작용할때는 2가지 모드를 사용가능(텍스트 파일 io, 바이너리 파일io)
2가지를 혼합해서 사용하기도 한다. 

13.2 텍스트 파일 입출력 예제

C에서 텍스트 파일을 입출력하는 것은 이하와 같다. 

1. 먼저 구조체에대한 포인터를 설정한다. 
2. 파일을 읽기나 쓰기 용도fopen으로 열어서 포인터에 넣어 준다.
3.화면에 출력하거나 파일에 출력한다.

13.3 텍스트 인코딩과 코드 페이지

텍스트 파일을 불러올때는 인코딩 방식을 확인 해야한다. UTF? ansi?

13.4 텍스트 파일 입출력 함수들

전반적인 내용은 11.4와 11.5의 내용을 반복한 것이다. 

13.5 바이너리 파일 입출력

바이너리파일은 바이너리 데이터를 그대로 옮기는것. 

기본적인 입출력은 이하의 예시와 같이 할수있다. 

13.6 파일 임의 접근

ftell과 fseek함수를 사용할 수있다.

13.7 기타 입출력 함수들

 ungetc()는 한글자를 읽은후 그 글자를 버퍼에 다시 넣어준다. 

fflush()는 버퍼에 쌓여있던데이터를 싹보내라는것

댓글