본문 바로가기

C언어/함수설명&Tip

저수준 고수준 입출력 함수 분류표

저수준 file 입출력의 read/write –disk user가 설정한 buffer에서 자료를 읽고쓴다.

Buffer file입출력의 getc/putc  fgets/fputs

-       시스템이 설정한 buffer 와 user가 정한 변수와의 사이에서 자료를 읽고 쓴다

-       Buffer disk간의 자료를 읽고 쓰는 것은 시스템이 필요에 따라서 (buffer empty  full일 때)자동적으로 행한다

입출력 함수 분류표

   

   

    

(메모리내)

문자열

저수준

 

표준파일

(표준 입출력에 대한 I/O)

스트림파일

(file 입출력에 대한 I/O)

바이너리파일

문자

입력

getchar()

getc(stream)

 

 

gfetc(stream)

 

 

출력

putchar()

putc(c,stream)

 

 

fputc(c,stream)

 

 

unget(c,stream)

 

 

입력

(stdin 으로 부터 문자열을str로 시작되는 버퍼에 읽어드린다)

\n 대신에 \0가 부가되어 저장

gets(str)

fgets(buf, max, stream)

 

read(fd, buf,nbyte)

단어

getw(stream)

 

블록

fread(ptr, size, nitems,stream)

 

출력

(str로 보인 버퍼에 기억된 문자열을stdout에 출력한다.)

\0 을 만나면\n으로 바꿔서 출력

puts(str)

fputs(buf, stream)

 

write(fd, buf,nbyte)

단어

putw(w,stream)

 

블록

fwrite(ptr, size, nitems,stream)

 

레코드

입력

scanf(format,[args])

fscanf(stream, format,[args])

sscanf(str, format,[args])

 

출력

printf(format,[args])

fprintf(stream, format,[args])

sprintf(str, format,[args])

 

파일

열기

(자동)

fopen(filename,mode)

 

 

freopen(filename,mode,stream)

 

 

fdopen(fd,mode)

 

 

닫기

(자동)

fclose(stream)

 

 

fflush(stream)

 

 

탐색

(자동)

fseek(stream,offset,mode)

 

open

ftell(stream)

 

close

rewind(stream)

 

lseek(fd,offset, mode)