getc, getwc
스트림에서 문자를 읽습니다.
int getc(
FILE *stream
);
wint_t getwc(
FILE *stream
);
매개 변수
- stream
입력 스트림
반환 값
읽은 문자를 반환합니다. 읽기 오류 또는 파일 끝 조건을 나타내기 위해 getc 는 EOF 를 반환하고, getwc 는 WEOF을 반환합니다. getc에 대해 ferror 또는 feof 을 사용하여 오류 또는 파일의 끝을 확인하세요. stream 가 NULL 인 경우, 매개 변수 유효성 검사 에 설명 된 대로 getc 및 getwc 은 잘못된 매개 변수 처기리를 호출합니다. 계속해서 실행하도록 허용된 경우, 이러한 함수는 EOF 를 반환하고 errno (또는 getwc 에 대한 WEOF) 를 EINVAL로 설정합니다.
이러한 오류 코드 및 기타 오류 코드에 대한 자세한 내용은 _doserrno, errno, _sys_errlist 및 _sys_nerr을 참조하십시오.
설명
각 루틴은 현재 위치에서 파일의 단일 문자를 읽고 다음 문자에 대해 관련된 파일 포인터(정의 된 경우) 를 증가시킵니다. stream과 연결된 파일입니다.
이러한 함수는 호출 스레드를 잠그고, 그러므로 안전 스레드가 됩니다. 비잠금 버전을 위해 _getc_nolock, _getwc_nolock을 참조하세요.
루틴 별 설명은 다음과 같습니다.
루틴 |
설명 |
---|---|
getc |
fgetc 고 동일하지만 함수와 매크로로 구현 합니다. |
getwc |
getc 의 와이드 문자 버전입니다. stream 가 텍스트 모드 또는 이진 모드에 열렸는지에 따라 와이드 문자 또는 멀티 바이트 문자를 읽습니다. |
제네릭 텍스트 라우팅 매핑
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);
}
Input: crt_getc.txt
Line one.
Line two.
Output
Input was: Line one.