File input/output
From cppreference.net
<
c
<stdio.h> 헤더는 일반적인 파일 작업 지원을 제공하고 좁은 문자(narrow character) 입출력 기능을 갖춘 함수들을 제공합니다.
<wchar.h> 헤더는 와이드 문자 입출력 기능을 제공하는 함수들을 지원합니다.
I/O 스트림은 FILE 타입의 객체로 표시되며, FILE * 타입의 포인터를 통해서만 접근하고 조작할 수 있습니다. 각 스트림은 외부 물리적 장치(파일, 표준 입력 스트림, 프린터, 직렬 포트 등)와 연결됩니다.
목차 |
타입
|
헤더 파일에 정의됨
<stdio.h>
|
|
|
C 입출력 스트림을 제어하는 데 필요한 모든 정보를 담을 수 있는 객체 타입
(typedef) |
|
|
파일 내 위치와 멀티바이트 파서 상태를 고유하게 지정할 수 있는 비배열 완전 객체 타입
(typedef) |
|
미리 정의된 표준 스트림
|
헤더 파일에 정의됨
<stdio.h>
|
|
|
입력 스트림과 연관된
FILE
*
타입의 표현식
출력 스트림과 연관된 FILE * 타입의 표현식 오류 출력 스트림과 연관된 FILE * 타입의 표현식 (매크로 상수) |
|
함수
파일 접근 |
|
|
헤더 파일에 정의됨
<stdio.h>
|
|
|
(C11)
|
파일을 엽니다
(함수) |
|
(C11)
|
기존 스트림을 다른 이름으로 열기
(함수) |
|
파일을 닫음
(함수) |
|
|
출력 스트림을 실제 파일과 동기화합니다
(함수) |
|
|
파일 스트림에 대한 버퍼를 설정합니다
(함수) |
|
|
파일 스트림에 대한 버퍼와 그 크기를 설정합니다
(함수) |
|
|
헤더에 정의됨
<wchar.h>
|
|
|
(C95)
|
파일 스트림을 와이드 문자 I/O와 좁은 문자 I/O 간에 전환합니다
(함수) |
직접 입력/출력 |
|
|
헤더 파일에 정의됨
<stdio.h>
|
|
|
파일에서 읽기
(함수) |
|
|
파일에 기록
(함수) |
|
비형식화된 입력/출력 |
|
Narrow character |
|
|
헤더 파일에 정의됨
<stdio.h>
|
|
|
파일 스트림에서 문자를 가져옴
(함수) |
|
|
파일 스트림에서 문자열을 읽어옵니다
(함수) |
|
|
파일 스트림에 문자를 기록합니다
(함수) |
|
|
파일 스트림에 문자 문자열을 기록합니다
(함수) |
|
|
stdin
에서 문자를 읽어들임
(함수) |
|
|
(C11에서 제거됨)
(C11)
|
stdin
에서 문자열을 읽어들임
(함수) |
|
문자를
stdout
에 기록합니다
(함수) |
|
|
문자 문자열을
stdout
에 기록합니다
(함수) |
|
|
파일 스트림에 문자를 다시 넣음
(함수) |
|
와이드 문자 |
|
|
헤더 파일에 정의됨
<wchar.h>
|
|
|
(C95)
|
파일 스트림에서 와이드 문자를 읽어옴
(함수) |
|
(C95)
|
파일 스트림에서 와이드 문자열을 읽어들임
(함수) |
|
(C95)
|
파일 스트림에 와이드 문자를 기록합니다
(함수) |
|
(C95)
|
파일 스트림에 와이드 문자열을 기록합니다
(함수) |
|
(C95)
|
stdin
에서 와이드 문자를 읽어들임
(함수) |
|
(C95)
|
stdout
에 와이드 문자를 기록합니다
(함수) |
|
(C95)
|
파일 스트림에 와이드 문자를 다시 넣음
(함수) |
서식화된 입력/출력 |
|
좁은 문자 |
|
|
헤더 파일에 정의됨
<stdio.h>
|
|
|
(C11)
(C11)
(C11)
|
표준 입력, 파일 스트림 또는 버퍼로부터 형식화된 입력을 읽어들임
(함수) |
|
(C99)
(C99)
(C99)
(C11)
(C11)
(C11)
|
표준 입력, 파일 스트림 또는 버퍼로부터
stdin
서식이 지정된 입력을 읽어들임
가변 인수 목록을 사용하여 (함수) |
|
(C99)
(C11)
(C11)
(C11)
(C11)
|
형식화된 출력을
stdout
, 파일 스트림 또는 버퍼에 출력합니다
(함수) |
|
(C99)
(C11)
(C11)
(C11)
(C11)
|
형식화된 출력을
stdout
, 파일 스트림 또는 버퍼에 출력
가변 인수 목록을 사용하여 (함수) |
와이드 문자 |
|
|
헤더 파일에 정의됨
<wchar.h>
|
|
|
(C95)
(C95)
(C95)
(C11)
(C11)
(C11)
|
서식이 지정된 와이드 문자 입력을
stdin
, 파일 스트림 또는 버퍼에서 읽어들임
(함수) |
|
(C99)
(C99)
(C99)
(C11)
(C11)
(C11)
|
가변 인자 목록을 사용하여 형식화된 와이드 문자 입력을
stdin
, 파일 스트림
또는 버퍼에서 읽어들임 (함수) |
|
(C95)
(C95)
(C95)
(C11)
(C11)
(C11)
(C11)
|
서식이 지정된 와이드 문자 출력을
stdout
, 파일 스트림 또는 버퍼에 출력합니다
(함수) |
|
(C95)
(C95)
(C95)
(C11)
(C11)
(C11)
(C11)
|
가변 인자 목록을 사용하여 형식화된 와이드 문자 출력을
stdout
, 파일 스트림
또는 버퍼에 출력합니다 (함수) |
파일 위치 지정 |
|
|
헤더 파일에 정의됨
<stdio.h>
|
|
|
현재 파일 위치 지시자를 반환합니다
(함수) |
|
|
파일 위치 표시자를 얻음
(함수) |
|
|
파일 위치 표시자를 파일의 특정 위치로 이동시킵니다
(함수) |
|
|
파일 위치 표시자를 파일의 특정 위치로 이동시킵니다
(함수) |
|
|
파일 위치 지시자를 파일의 시작 위치로 이동시킵니다
(function) |
|
오류 처리 |
|
|
헤더 파일에 정의됨
<stdio.h>
|
|
|
오류를 지웁니다
(function) |
|
|
파일 끝 확인
(함수) |
|
|
파일 오류를 검사합니다
(함수) |
|
|
현재 오류에 해당하는 문자 문자열을
stderr
에 출력합니다
(함수) |
|
파일 작업 |
|
|
헤더 파일에 정의됨
<stdio.h>
|
|
|
파일을 삭제합니다
(함수) |
|
|
파일 이름을 변경합니다
(함수) |
|
|
(C11)
|
임시 파일에 대한 포인터를 반환합니다
(함수) |
|
(C11)
|
고유한 파일명을 반환합니다
(함수) |
매크로 상수
|
헤더 파일에 정의됨
<stdio.h>
|
|
|
EOF
|
int
타입의 음수 값 정수 상수 표현식
(매크로 상수) |
|
FOPEN_MAX
|
동시에 열 수 있는 최대 파일 수
(매크로 상수) |
|
FILENAME_MAX
|
지원되는 가장 긴 파일 이름을 저장하기 위한
char
배열에 필요한 크기
(매크로 상수) |
|
BUFSIZ
|
setbuf
가 사용하는 버퍼의 크기
(매크로 상수) |
|
_IOFBF
_IOLBF
_IONBF
|
setvbuf
에 대한 인자, 완전 버퍼링된 I/O를 나타냄
setvbuf 에 대한 인자, 줄 버퍼링된 I/O를 나타냄 setvbuf 에 대한 인자, 버퍼링되지 않은 I/O를 나타냄 (매크로 상수) |
|
SEEK_SET
SEEK_CUR
SEEK_END
|
fseek
에 대한 인자, 파일 시작부터의 탐색을 나타냄
fseek 에 대한 인자, 현재 파일 위치부터의 탐색을 나타냄 fseek 에 대한 인자, 파일 끝부터의 탐색을 나타냄 (매크로 상수) |
|
TMP_MAX
TMP_MAX_S
(C11)
|
tmpnam
이 생성할 수 있는 고유 파일명의 최대 개수
tmpnam_s 가 생성할 수 있는 고유 파일명의 최대 개수 (매크로 상수) |
|
L_tmpnam
L_tmpnam_s
(C11)
|
tmpnam
의 결과를 저장하기 위한
char
배열에 필요한 크기
tmpnam_s 의 결과를 저장하기 위한 char 배열에 필요한 크기 (매크로 상수) |
참조문헌
- C23 표준 (ISO/IEC 9899:2024):
-
- 7.21 입출력 <stdio.h> (p: TBD)
-
- 7.29 확장 멀티바이트 및 와이드 문자 유틸리티 <wchar.h> (p: TBD)
-
- 7.31.11 입출력 <stdio.h> (p: TBD)
-
- 7.31.16 확장 멀티바이트 및 와이드 문자 유틸리티 <wchar.h> (p: TBD)
-
- K.3.5 입출력 <stdio.h> (p: TBD)
- C17 표준 (ISO/IEC 9899:2018):
-
- 7.21 입출력 <stdio.h> (p: TBD)
-
- 7.29 확장 멀티바이트 및 와이드 문자 유틸리티 <wchar.h> (p: TBD)
-
- 7.31.11 입출력 <stdio.h> (p: TBD)
-
- 7.31.16 확장 멀티바이트 및 와이드 문자 유틸리티 <wchar.h> (p: TBD)
-
- K.3.5 입출력 <stdio.h> (p: TBD)
- C11 표준 (ISO/IEC 9899:2011):
-
- 7.21 입력/출력 <stdio.h> (p: 296-339)
-
- 7.29 확장 멀티바이트 및 와이드 문자 유틸리티 <wchar.h> (p: 402-446)
-
- 7.31.11 입력/출력 <stdio.h> (p: 456)
-
- 7.31.16 확장 멀티바이트 및 와이드 문자 유틸리티 <wchar.h> (p: 456)
-
- K.3.5 입력/출력 <stdio.h> (p: 586-603)
- C99 표준 (ISO/IEC 9899:1999):
-
- 7.19 입출력 <stdio.h> (p: 262-305)
-
- 7.24 확장 멀티바이트 및 와이드 문자 유틸리티 <wchar.h> (p: 348-392)
-
- 7.26.9 입출력 <stdio.h> (p: 402)
-
- 7.26.12 확장 멀티바이트 및 와이드 문자 유틸리티 <wchar.h> (p: 402)
- C89/C90 표준 (ISO/IEC 9899:1990):
-
- 4.9 INPUT/OUTPUT <stdio.h>
-
- 4.13.6 Input/output <stdio.h>
참고 항목
|
C++ documentation
for
C-style file input/output
|