파일 입출력

파일 입출력을 공부하고

파일 입출력의 경우 정말 특별한 것은 없다.

그저 파일을 열고 수정하거나 작성하는 등의 활동을 C를 통해 수행하는 것이다.

Open과 Close로 구성되며 open을 할 때 어떻게 할 지에 대해 다앙한 모드가 존대한다.

Open에 성공하면 파일의 포인터가 실패하면 NULL 포인터가 반환된다. 널 포인터는 '해당하는 값이 존재하지 않는다' 를 뜻한다고 생각하면 된다.

r은 읽기 w는 쓰기 a는 추가하기 +는 저장하기 정도로 생각해주고 알면 될 것 같다.

file 구조체는 stdio.h에 포함된다.

파일(데이터)의 타입으로는 크게 두 개가 있다.

t를 통해 텍스트 타입, b를 통해 바이너리 타입으로 접근 가능하다.

추가적으로 x는 열고자 하는 파일이 이미 열려있다면 파일 열기에 실패, +는 읽고 쓰기가 모두 가능한 모드이다. 이것들을 적절히 조합하여 원하는 형식의 데이터 타입을 목적에 따라 접근할 수 있게 된다.

텍스트 타입과 바이너리 타입

텍스트 타입은 텍스트를 사용하는 반면 바이너리 타입은 입출력 시 숫자값을 이용하며 숫자값을 이용해 문자열로 바꿔준다. prinf("%d",'a');와 비슷한 느낌이라 생각한다.

c언어를 사용하다 보면 sscanf나 fscanf 이런 것들을 볼 수 있다. 한자와 비슷하게 생각하면 된다, 그냥 단순히 string과 file을 뜻하겠구나 하고 유추할 수 있다. 그리고 scanf의 역할에 대해 생각하면 해당 함수가 어떤 역할을 하는지 대략적으로 알 수 있다.

스트림