BLOG main image
분류 전체보기 (129)
새소식 (NEWS) (2)
일상 + 생활 (21)
n e w + i s s u e (10)
노래가 있는 이야기~♪ (11)
Make + Food (0)
여행 (1)
Tips & Tech (31)
C Programming (9)
운영체제(O.S) (20)
TroubleShootings (5)
JSP (0)
IT 관련 용어 및 설명 (7)
Reverse Engineering (0)
Michael Kors Handbags Outlet
Michael Kors Handbags Outlet
michael kors bag
michael kors bag
michael kors laptop bag
michael kors laptop bag
michael kors crossbody bags
michael kors crossbody bags
Michael kors handbags
Michael kors handbags
2,758,209 Visitors up to today!
Today 1,970 hit, Yesterday 3,600 hit
daisy rss

who's online
tistory 티스토리 가입하기!
'File System'에 해당되는 글 2건
2007.01.03 17:16

+fopen()함수

+fclose()함수


신고
Creative Commons License
Creative Commons License

'C Programming > ::: note :::' 카테고리의 다른 글

유용한 디버그 메시지  (0) 2009.02.12
포인터 문자열 변수 및 함수 파라미터 사용 예제  (0) 2008.10.20
C_노트  (0) 2007.07.12
File system - fopen();, fclose();  (0) 2007.01.03
파일 입출력 - 스트림(stream)  (0) 2007.01.03
   

Name
Password
Homepage
Secret
2007.01.03 13:52
 스트림(stream)의 개념

C 언어에서는 파일 입출력을 수행하기 위하여 미리 정해진 방법은 없지만, C 표준 라이브러리는 대단히 많은 입출력 함수들을 포함하고 있다. C언어의 입출력 방법은 효율적이고, 강력하고, 융통성이 많다.

디스크 파일 입출력에 대한 논의를 시작하기 전에,
C에서 매우 중요한 2가지 개념인 stream과 file을 이해하여야 한다.


스트림의 개념

스트림은 파일에 대한 논리적 접속

먼저 C언어의 입출력 시스템은 사용중인 입출력 장치와는 무관하게 일정한 접속(interface) 방식을 프로그래머에게 제공한다. 이를 위해 프로그래머와 하드웨어 사이에 하나의 추상적인 단계를 제공하며,
이것을 스트림(stream)이라 부른다.

입출력을 제공하는 실제 장치는 파일(file)이다.

파일(file)이란,
디스크 파일(disk file), 화면(screen), 키보드(keyboard), 메모리(memory), 포트(port), 테이프 파일(tape file), 그리고 다른 종류의 여러 가지 입출력 장치들을 말한다.

파일의 형태나 기능이 서로 다르지만 모든 스트림은 동일하다.

스트림은 자동으로 이러한 파일들의 차이점을 동등하게 처리해준다.


스트림(stream)
여는 연산(Open peration)을 사용하여 파일에 연결되며, 닫는 연산(close operation)을 사용하여 연결을 단절시킨다.

텍스트(Text)와 2진(Binary) 스트림이라는 2가지 형태의 스트림이 존재한다.

1. 텍스트 스트림(Text Stream)은 ASCII 문자들을 포함한다.
텍스트 스트림이 사용될 때 어떤 문자에 대해서 번역이 일어난다. 예를 들어, 뉴라인(Newline)문자가 출력되면, 그 문자는 캐리지 리턴(carriage return)과 라인 피드(linefeed)문자의 순서로 변환된다. 이러한 이유 때문에 스트림에 보내진 것과 파일에 저장된 것 사이에 항상 1 vs 1 대응이 되는 것은 아니다.

2. 2진 스트림(Binary stream)은 어떤 형태의 데이터라도 함께 사용될 수 있다.
문자 번역은 일어나지 않으며, 스트림에 보내진 것과 파일에 실제 저장된 것 사이에 1 vs 1 대응이 된다.

또 하나의 개념으로 현재 위치라는 것이 있다.

현재 위치(current location)
란 다음 파일 접근이 일어날 파일 내의 위치를 말한다.

예를 들어 파일의 길이가 100바이트이고 이 파일의 반이 이미 읽혔따면, 다음에 읽을 위치는 51번째 바이트가 되며, 이것이 현재 위치에 해당한다.

요약하면, C에서 디스크 입출력은 다른 형태의 입출력과 마찬가지로 스트림이라 부르는 논리적 접속을 통하여 수행된다. 모든 스트림은 비슷한 성질을 가지고 있으며, 스트림이 어떤 형태의 파일과 관련되었는지 관계없이 같은 입출력 함수들에 의하여 작동된다.


신고
Creative Commons License
Creative Commons License

'C Programming > ::: note :::' 카테고리의 다른 글

유용한 디버그 메시지  (0) 2009.02.12
포인터 문자열 변수 및 함수 파라미터 사용 예제  (0) 2008.10.20
C_노트  (0) 2007.07.12
File system - fopen();, fclose();  (0) 2007.01.03
파일 입출력 - 스트림(stream)  (0) 2007.01.03
   

Name
Password
Homepage
Secret
prev"" #1 next

티스토리 툴바