Share via


_cgets_s, _cgetws_s

Obtém uma seqüência de caractere a partir do console.Esta é uma versão de _cgets e _cgetws com aprimoramentos de segurança sistema autônomo descrito em Aprimoramentos de segurança no 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

Parâmetros

  • [out] buffer
    Local de armazenamento de dados.

  • [in]numberOfElements
    O dimensionar do buffer em caracteres de byte único ou de longa distância, que também é o número máximo de caracteres a serem lidos.

  • [in]pSizeRead
    O número de caracteres realmente lidos.

Valor de retorno

O valor retornado será zero se for bem-sucedida; um código de erro se ocorrer uma falha.

Condições de erro

buffer

numberOfElements

pSizeRead

Return

Sumário de buffer

NULL

any

any

EINVAL

n/d

not NULL

zero

any

EINVAL

não modificado

not NULL

any

NULL

EINVAL

cadeia de comprimento zero

Comentários

_cgets_s e _cgetws_s ler uma seqüência a partir do console e copie a seqüência de caracteres (com um terminador nulo) buffer. _cgetws_s é a versão de caractere largo da função; diferente é idêntico ao dimensionar de caractere, o comportamento dessas duas funções. O dimensionar máximo da seqüência de caracteres a ser lido é passado sistema autônomo o numberOfElements parâmetro. Esse dimensionar deve incluir um caractere para a terminação nula extra.O número real de caracteres de leitura é colocado em pSizeRead.

Se ocorrer um erro durante a operação ou na validação de parâmetros, o manipulador de parâmetro inválido é chamado, conforme descrito em Validação de parâmetro . Se a execução for permitida para continuar, errno é definido como EINVAL e EINVAL será retornado.

No C++, usando essas funções é simplificado pelo modelo sobrecargas; sobrecargas de podem inferir o comprimento do buffer automaticamente (eliminando a necessidade de especificar um argumento de dimensionar) e eles podem substituir automaticamente funções não seguras, mais antigas, com suas contrapartes mais recentes e seguras.For more information, see Proteger overloads de modelo.

Mapeamentos de rotina de texto genérica

Rotina tchar.h

_UNICODE e _MBCS não definido

_MBCS definido

_UNICODE definido

_cgetts_s

_cgets_s

_cgets_s

_cgetws_s

Requisitos

Rotina

Cabeçalho necessário

_cgets_s

<conio.h>

_cgetws_s

<conio.h> ou <wchar.h>

Para obter mais informações de compatibilidade, consulte Compatibilidade na introdução.

Equivalente do NET Framework

Não aplicável. Para telefonar a função C padrão, use PInvoke. Para obter mais informações, consulte Exemplos de invocação de plataforma.

Consulte também

Referência

Console e porta de E/s

_getch, _getwch