다음을 통해 공유


_cgets_s, _cgetws_s

콘솔에서 문자열을 가져옵니다. 이러한 버전의 _cgets and _cgetws 에는 CRT의 보안 기능에 설명된 대로 보안 향상 기능이 포함됩니다.

중요

이 API는 Windows 런타임에서 실행되는 응용 프로그램에서 사용할 수 없습니다.자세한 내용은 /ZW에서 지원하지 않는 CRT 함수를 참조하십시오.

errno_t _cgets_s( 
   char *buffer,
   size_t numberOfElements,
   size_t *pSizeRead
);
errno_t _cgetws_s(
   wchar_t *buffer
   size_t numberOfElements,
   size_t *pSizeRead
);
template <size_t size>
errno_t _cgets_s( 
   char (&buffer)[size],
   size_t *pSizeRead
); // C++ only
template <size_t size>
errno_t _cgetws_s(
   wchar_t (&buffer)[size],
   size_t *pSizeRead
); // C++ only

매개 변수

  • [out] buffer
    출력을 위한 저장소 위치

  • [in] numberOfElements
    또한 읽을 수 있는 문자의 최대 수는 1 바이트 또는 와이드 문자 버퍼의 크기입니다.

  • [in] pSizeRead
    실제로 읽은 문자 수입니다.

반환 값

반환 값은 성공 하면 0 그렇지 않으면 오류가 발생 하는 경우오류 코드 입니다.

오류 조건

buffer

numberOfElements

pSizeRead

반환

buffer의 내용입니다.

NULL

any

any

EINVAL

해당 없음

NULL이 아닙니다.

0

any

EINVAL

수정 안 됨

NULL이 아닙니다.

any

NULL

EINVAL

길이가 0인 문자열

설명

_cgets_s and _cgetws_s 는 콘솔에서 문자열을 읽고 buffer 에 문자열을 복사합니다. (null 종료자를 사용하여) _cgetws_s 는 함수의 와이드 문자 버전입니다. 문자 크기 이외에 이러한 두개의 함수의 작동은 동일합니다. 읽기 위한 문자열의 최대 크기는 numberOfElements 매개 변수로서 전달됩니다. 이 크기는 null 종료 문자를 포함 해야 합니다. 읽을 문자의 실제 수는 pSizeRead 에 있습니다.

유효한 매개 변수의 작동 중에 오류가 발생한 경우, 잘못된 매개 변수 처리기가 매개 변수 유효성 검사 에 설명된 대로 호출됩니다. 계속해서 실행하도록 허용된 경우, errno 는 EINVAL 으로 설정되고 EINVAL 가 반환됩니다.

C++에서는 템플릿 오버로드로 인해 이러한 함수를 사용하는 것이 보다 간단해 집니다. 오버로드는 버퍼 길이를 자동으로 유추할 수 있으며(크기 인수를 지정할 필요가 없어짐), 기존의 비보안 함수를 보다 최신의 보안 대응 함수로 자동으로 바꿀 수 있습니다. 자세한 내용은 안전한 템플릿 오버로드을 참조하십시오.

제네릭 텍스트 라우팅 매핑

Tchar.h 루틴

_UNICODE 및 _MBCS 정의되지 않음

_MBCS 정의됨

_UNICODE 정의됨

_cgetts_s

_cgets_s

_cgets_s

_cgetws_s

요구 사항

루틴

필수 헤더

_cgets_s

<conio.h>

_cgetws_s

<conio.h> 또는 <wchar.h>

호환성에 대한 자세한 내용은 호환성을 참조하십시오.

해당 .NET Framework 항목

해당 사항 없음. 표준 C 함수를 호출하려면 PInvoke를 사용합니다. 자세한 내용은 플랫폼 호출 예제을 참조하십시오.

참고 항목

참조

콘솔 및 포트 I/O

_getch, _getwch