더북(TheBook)

▼ 표 8-4 fopenfreopen의 모드와 수정자. 처음 세 항목은 모드 스트링이다. 옵션으로 이 세 가지 항목이 한 개 이상 더 나올 수 있다.

모드

메모

 

fopen 실행 후의 파일 상태

'a'

추가(append)

w

기존 파일 내용은 그대로 있고, 파일 끝을 가리킨다.

'w'

쓰기(write)

w

기존 파일 내용이 (있다면) 지운다.

'r'

읽기(read)

r

기존 파일 내용은 그대로 있고, 파일 시작점을 가리킨다.

'+'

업데이트(update)

rw

읽기 및 쓰기 모드로 파일을 연다.

'b'

바이너리(binary)

바이너리 모드로 파일을 연다. 이렇게 하지 않으면 텍스트 파일로 취급한다.

'x'

익스클루시브(exclusive)

기존에 없던 파일이라면 쓰기 모드로 연다.

▼ 표 8-5 fopenfreopen에서 지정할 수 있는 모드 스트링: 표 8-4에 나온 항목에 대한 올바른 조합을 정리한 것이다.

"a"

필요에 따라 빈 텍스트 파일을 만든다. 파일 끝에 쓸 수 있게 연다.

"w"

빈 텍스트 파일을 만들거나 기존 내용을 지운다. 쓰기 모드로 연다.

"r"

기존 텍스트 파일을 읽기 모드로 연다.

"a+"

필요에 따라 빈 텍스트 파일을 만든다. 파일 끝에 읽거나 쓸 수 있게 연다.

"w+"

빈 텍스트 파일을 만들거나 기존 내용을 지운다. 읽거나 쓸 수 있게 연다.

"ab" "rb" "wb" "a+b" "ab+" "r+b" "rb+" "w+b" "wb+"

텍스트 파일이 아닌 바이너리 파일이라는 점을 제외하면 위와 같다.

"wx" "w+x" "wbx" "w+bx" "wb+x"

호출 전에 이미 파일이 있으면 오류가 발생하는 점을 제외하면 위와 같다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.