getc
, getwc
스트림에서 문자를 읽습니다.
구문
int getc(
FILE *stream
);
wint_t getwc(
FILE *stream
);
매개 변수
stream
입력 스트림입니다.
반환 값
읽은 문자를 반환합니다. 읽기 오류 또는 파일 끝 조건을 표시하기 위해 getc
는 EOF
를 반환하고 getwc
는 WEOF
를 반환합니다. getc
의 경우 ferror
또는 feof
를 사용하여 오류 또는 파일 끝이 있는지 확인합니다. 이면 stream
매개 변수 유효성 검사에 설명된 대로 잘못된 매개 변수 처리기를 호출합니다.NULL
getc
getwc
실행을 계속하도록 허용된 경우 이러한 함수는 반환 EOF
(또는 WEOF
해당 getwc
)으로 설정 errno
됩니다 EINVAL
.
반환 코드에 대한 자세한 내용은 , , 및 를 참조하세요errno
._sys_nerr
_sys_errlist
_doserrno
설명
각 루틴은 파일에서 현재 위치의 단일 문자를 읽고 다음 문자를 가리킬 연결된 파일 포인터(정의된 경우)를 늘립니다. 파일은 stream
과 연결됩니다.
이러한 함수는 호출 스레드를 잠그므로 스레드로부터 안전합니다. 잠금이 아닌 버전은 다음_getwc_nolock
을 참조하세요_getc_nolock
.
이어서 루틴별 설명이 제공됩니다.
루틴에서 반환된 값 | 설명 |
---|---|
getc |
fgetc 와 같지만 함수 및 매크로로 구현됩니다. |
getwc |
와이드 문자 버전의 getc 입니다. stream 이 텍스트 모드 또는 이진 모드로 열리는지에 따라 멀티바이트 문자 또는 와이드 문자를 읽습니다. |
기본적으로 이 함수의 전역 상태는 애플리케이션으로 범위가 지정됩니다. 이 동작을 변경하려면 CRT 전역 상태를 참조하세요.
일반 텍스트 루틴 매핑
TCHAR.H 루틴 | _UNICODE 및 _MBCS 정의되지 않음 |
정의된 _MBCS |
정의된 _UNICODE |
---|---|---|---|
_gettc |
getc |
getc |
getwc |
요구 사항
루틴에서 반환된 값 | 필수 헤더 |
---|---|
getc |
<stdio.h> |
getwc |
<stdio.h> 또는 <wchar.h> |
호환성에 대한 자세한 내용은 호환성을 참조하세요.
예시
// crt_getc.c
// Use getc to read a line from a file.
#include <stdio.h>
int main()
{
char buffer[81];
int i, ch;
FILE* fp;
// Read a single line from the file "crt_getc.txt".
fopen_s(&fp, "crt_getc.txt", "r");
if (!fp)
{
printf("Failed to open file crt_getc.txt.\n");
exit(1);
}
for (i = 0; (i < 80) && ((ch = getc(fp)) != EOF)
&& (ch != '\n'); i++)
{
buffer[i] = (char) ch;
}
// Terminate string with a null character
buffer[i] = '\0';
printf( "Input was: %s\n", buffer);
fclose(fp);
}
입력: crt_getc.txt
Line one.
Line two.
출력
Input was: Line one.
참고 항목
스트림 I/O
fgetc
, fgetwc
_getch
, _getwch
putc
, putwc
ungetc
, ungetwc