인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

전민혁님의 프로필 이미지
전민혁

작성한 질문수

홍정모의 따라하며 배우는 C언어

13.2 텍스트 파일 입출력 예제

메모리 레이아웃에서 스트림의 위치

작성

·

325

·

수정됨

0

fopen이 반환하는것은 파일구조체의 포인터입니다.

  1. 이러한 fopen이 반환하는 파일구조체는 메모리 레이아웃에서 어디에 위치하고 있나요?

  2. fopen함수를 사용하면 생기는 파일 구조체를 파일스트림 이라고 이해하면 될까요?

그리고 fclose를 사용하는 이유는, 파일이 다 읽히지 않았을 때 버퍼에 남아있는 데이터가 오류를 일으키지 않게 하기 위함이라고 하셨습니다. 그 이유 외에 메모리 누수를 방지하기 위함도 있나요?

답변 1

0

안녕하세요, 하나씩 답변드리자면

  1. 힙 영역에 할당됩니다.

  2. 그렇습니다.

  3. .맞습니다. 할당을 해제하지 않으면 계속 데이터가 남아있을텐데 이러한 문제가 메모리 누수라고 볼 수 있습니다.

관련한 비슷한 질문을 담은 링크를 참고삼아 첨부하여 드립니다.

https://stackoverflow.com/questions/24565191/file-pointer-in-c-dynamically-allocated

 

전민혁님의 프로필 이미지
전민혁
질문자

친절한 답변 감사드립니다.

전민혁님의 프로필 이미지
전민혁

작성한 질문수

질문하기