getchar
, getwchar
Lê um caractere da entrada padrão.
Sintaxe
int getchar();
wint_t getwchar();
Valor retornado
Retorna o caractere lido. Essas funções aguardam a entrada e não retornam até que ela esteja disponível.
Para indicar um erro de leitura ou uma condição de fim de arquivo, getchar
retorna EOF
e getwchar
retorna WEOF
. Para getchar
, use ferror
ou feof
para verificar se há um erro ou se o final do arquivo foi atingido.
Comentários
Cada rotina lê um único caractere de stdin
e incrementa o ponteiro de arquivo associado para apontar para o caractere seguinte. getchar
é o mesmo que _fgetchar
, mas implementado como uma função e como uma macro.
Essas funções também bloqueiam o thread de chamada e são thread-safe. Para uma versão sem bloqueio, confira _getchar_nolock
, _getwchar_nolock
.
Por padrão, o estado global dessa função tem como escopo o aplicativo. Para alterar esse comportamento, confira Estado global no CRT.
Mapeamentos de rotina de texto genérico
Rotina TCHAR.H |
_UNICODE e _MBCS não definidos |
_MBCS definido |
_UNICODE definido |
---|---|---|---|
_gettchar |
getchar |
getchar |
getwchar |
Requisitos
Rotina | Cabeçalho necessário |
---|---|
getchar |
<stdio.h> |
getwchar |
<stdio.h> ou <wchar.h> |
Não há suporte para o console em aplicativos UWP (Plataforma Universal do Windows). Os identificadores de fluxo padrão associados ao console, stdin
, stdout
e stderr
, devem ser redirecionados antes que as funções em tempo de execução C possam usá-los em aplicativos UWP. Para obter informações sobre compatibilidade, consulte Compatibilidade.
Exemplo
// crt_getchar.c
// Use getchar to read a line from stdin.
#include <stdio.h>
int main()
{
char buffer[81];
int i, ch;
for (i = 0; (i < 80) && ((ch = getchar()) != EOF)
&& (ch != '\n'); i++)
{
buffer[i] = (char) ch;
}
// Terminate string with a null character
buffer[i] = '\0';
printf( "Input was: %s\n", buffer);
}
This textInput was: This text
Confira também
E/S de fluxo
getc
, getwc
fgetc
, fgetwc
_getch
, _getwch
putc
, putwc
ungetc
, ungetwc