fgets
, fgetws
스트림에서 문자열을 가져옵니다.
구문
char *fgets(
char *str,
int numChars,
FILE *stream
);
wchar_t *fgetws(
wchar_t *str,
int numChars,
FILE *stream
);
매개 변수
str
데이터의 스토리지 위치입니다.
numChars
읽을 최대 문자 수입니다.
stream
FILE
구조체에 대한 포인터입니다.
반환 값
이러한 각 함수는 str
를 반환합니다. NULL
은 오류 또는 파일 끝 조건을 나타내기 위해 반환됩니다. 오류가 발생했는지 여부를 확인하려면 feof
또는 ferror
를 사용합니다. null 포인터이거나 stream
0보다 작거나 numChars
같은 경우 str
이 함수는 매개 변수 유효성 검사에 설명된 대로 잘못된 매개 변수 처리기를 호출합니다. 계속해서 실행하도록 허용된 경우 errno
는 EINVAL
로 설정되고 함수에서 NULL
버전입니다.
반환 코드에 대한 자세한 내용은 , , 및 를 참조하세요errno
._sys_nerr
_sys_errlist
_doserrno
설명
fgets
함수는 입력 stream
인수에서 문자열을 읽어 str
에 저장합니다. fgets
는 현재 스트림 위치에서 첫 번째 줄 바꿈 문자, 스트림의 끝 또는 읽은 문자 수가 1과 같 numChars
을 때까지 문자를 읽습니다. str
에 저장된 결과는 null 문자와 함께 추가됩니다. 줄 바꿈 문자는 읽을 경우 문자열에 포함됩니다.
fgetws
은 fgets
의 와이드 문자 버전입니다.
fgetws
는 각각 텍스트 모드 또는 이진 모드에서 열릴 때 stream
와이드 문자 인수 str
를 멀티바이트 문자열 또는 와이드 문자열로 읽습니다. 유니코드 및 멀티바이트 stream-I/O에서 텍스트 및 이진 모드를 사용하는 방법에 대한 자세한 내용은 텍스트 및 이진 모드의 텍스트 및 이진 모드 파일 I/O 및 유니코드 스트림 I/O를 참조하세요.
기본적으로 이 함수의 전역 상태는 애플리케이션으로 범위가 지정됩니다. 이 동작을 변경하려면 CRT의 전역 상태를 참조하세요.
일반 텍스트 루틴 매핑
TCHAR.H 루틴 |
_UNICODE 정의 _MBCS 되지 않음 |
_MBCS 정의 |
_UNICODE 정의 |
---|---|---|---|
_fgetts |
fgets |
fgets |
fgetws |
요구 사항
함수 | 필수 헤더 |
---|---|
fgets |
<stdio.h> |
fgetws |
<stdio.h> 또는 <wchar.h> |
호환성에 대한 자세한 내용은 호환성을 참조하세요.
예시
// crt_fgets.c
// This program uses fgets to display
// the first line from a file.
#include <stdio.h>
int main( void )
{
FILE *stream;
char line[100];
if( fopen_s( &stream, "crt_fgets.txt", "r" ) == 0 )
{
if( fgets( line, 100, stream ) == NULL)
printf( "fgets error\numChars" );
else
printf( "%s", line);
fclose( stream );
}
}
입력: crt_fgets.txt
Line one.
Line two.
출력
Line one.
참고 항목
피드백
https://aka.ms/ContentUserFeedback
출시 예정: 2024년 내내 콘텐츠에 대한 피드백 메커니즘으로 GitHub 문제를 단계적으로 폐지하고 이를 새로운 피드백 시스템으로 바꿀 예정입니다. 자세한 내용은 다음을 참조하세요.다음에 대한 사용자 의견 제출 및 보기