게시판 즐겨찾기
편집
드래그 앤 드롭으로
즐겨찾기 아이콘 위치 수정이 가능합니다.
[C언어]파일의 크기를 계산하는 프로그램 질문드려요
게시물ID : programmer_5594짧은주소 복사하기
작성자 : 하마돼지
추천 : 0
조회수 : 2819회
댓글수 : 2개
등록시간 : 2014/09/23 23:40:03
옵션
  • 본인삭제금지
C언어 공부중에 ftell함수를 이용해서 파일의 크기를 계산하는 프로그램을 만드는 예제가 있어서 작성해 보았는데요

#include <stdio.h>
int Sizeoffile(FILE*fp);

int main(void)
{
FILE * fp=fopen("FILE_NAME.FILE","rb");
long size;
size=Sizeoffile(fp);

printf("파일의 크기는 %ld 입니다 \n",size);

return 0;
}
int Sizeoffile(FILE*fp)
{
while(fgetc(fp)!=EOF){}

return ftell(fp);
}

fgetc함수를 써서 파일의 끝까지 파일 위치 지시자를 이동하고 

그 파일위치 지시자의 위치를 반환해서 파일 크기를 계산해내게 했는데요

답안을 보니까 

long GetFileSize(file * fp)
{
long fpos;
long fsize;
fpos=ftell(fp);

fseek(fp,0,SEEK_END);
fsize=ftell(fp);
fseek(fp, fpos, SEEK_SET);
return fsize;
}

하는 식으로 파일을 불러오는 도중에 계속 크기를 출력하더라구요

답안에서 왜 fpos,fsize라는 변수를 만들어서 계속 위치를 저장하는건가요??

답안처럼 코드를 작성해야하나요?


전체 추천리스트 보기
새로운 댓글이 없습니다.
새로운 댓글 확인하기
글쓰기
◀뒤로가기
PC버전
맨위로▲
공지 운영 자료창고 청소년보호