본문 바로가기

C 언어/임베디드 C

FILE 구조체


FILE 구조체 내용

C에서 정의된 FILE 구조체

typedef struct _iobuf
{
 char* _ptr;    //파일포인터로 파일의 현재 위치를 나타낸다.
 int _cnt;        //입력버퍼에서 사용할 수 있는 문자의 개수
 char* _base; //메모리상에 있는 파일 원형의 주소를 가리킨다.
 int _flag; //파일 포인터가 파일의 끝에 오면 제 5bit가 1이 됨.
 int _file;  //파일 식별자
 int _charbuf; //문자열 버퍼
 int _bufsiz;   //버퍼의 크기
 char* _tmpfname; //임시 파일 이름의 위치?
} FILE;

 

FILE *fp;

fp=("data.txt", "w+t");




char* _ptr; //파일포인터로 파일의 현재 위치를 나타낸다.

 

 int _cnt;        //입력버퍼에서 사용할 수 있는 문자의 개수
(the number of characters to use in the buffer)

버퍼에 남아있는 문자의 개수를 나타낸다.

 

int _bufsiz;   //파일을 읽어들일 버퍼의 크기

 

char* _base 메모리상에 있는 파일 원형이 있는 시작 주소를 가리킨다.

printf("%s\n"fp->_base);

위 명령을 fclose(fp);명령 앞에서 실행시키면,

파일에 출력되는 내용을 모두 볼 수 있다.

 

_files 파일 식별자 정도로 생각하면 된다.

stdin은 0 : 입력버퍼,  stdout은 1:출력버퍼, stderr은 2: 에러버퍼,

나머지부터는 파일이 열어진 순서대로 3, 4, 5...가 할당된다.

'C 언어 > 임베디드 C' 카테고리의 다른 글

#pragma 지시어의 사용법 정리  (0) 2011.11.16
공용체(메모리 겹쳐쓰기를 허용)  (0) 2011.08.22
열거형  (0) 2011.08.17
연결리스트  (0) 2011.07.08
구조체를 함수의 인수로 전달하는 방법  (0) 2011.07.07