FIle
User mode에서 Kernel mode로 진입할 수 있는 '인터 페이스'
file 마다 고유의 I/O buffer가 존재한다.
논리구조가 '선형'구조이다.
생성시 크기가 0이며, 내용을 쓰면 점점 커진다.
변수, 메모리 동적 할당 => RAM
File => Disk
종류
Data file (mp3, avi, ppt...)
Executable file (exe, dll...)
File System
User가 File을 다룰 수 있도록 방법을 제공해주는 것 (open, close, I/O)
fputs 등의 함수로 file에 뭔가를 쓴다고 하지만 사실 file buffer에 쓰는 것이며, fclose() 할 때 file buffer에 있는 내용들이 file에 모두 쓰여진다.
연습문제)
1) 표준입력장치(stdin)에서 문자열을 입력받은 후, 표준출력장치(stdout)로 출력하는 프로그램을 작성하세요.
단, 반드시 fgets()와 fputs() 함수를 사용하세요.
Q )
2) 현재 경로에서 'TestFile.txt' 텍스트 파일을 연 후, 사용자가 입력한 문자열을 뒤에 이어서 추가한 후 다시 저장하는
프로그램을 작성하세요.
Q )
3) 현재 경로에서 'TestFile.txt' 텍스트 파일을 연 후, 원본 파일에서 행 단위로 문자열을 읽어 들여 대상 파일에
복사하는 프로그램을 작성하세요. 단, 대상 파일도 현재 경로에 생성하며, 파일명은 'DstFile.txt'로 합니다.
Q )
4) main() 함수의 인자로 두 바이너리 파일의 경로를 입력받아 바이너리 모드로 열고, 원본 파일의 내용을 읽어들여
대상 파일로 복사하는 프로그램을 작성하세요.
단, 복사의 진행 과정을 백분율로 화면에 출력하고, 한 번에 4KB 단위로 복사합니다. 그리고 대상 파일이
존재 유무에 상관없이 무조건 생성하며, 파일의 크기가 최대 100MB 이상인 경우는 고려하지 않습니다.
Q )
'Programming > C language' 카테고리의 다른 글
Chapter 16. 전처리기 (0) | 2017.07.04 |
---|---|
Chapter 15. 변수와 상수 고급 이론 (0) | 2017.07.04 |
Chapter 13. 구조체와 공용체 (0) | 2017.07.02 |
Chapter 12. 함수 응용 (문제풀이) (0) | 2017.06.30 |
Chapter 12. 함수 응용 (내용 요약) (0) | 2017.06.30 |