getchar, getwchar
Reads a character from standard input.
int getchar();
wint_t getwchar();
Return Value
Returns the character read. To indicate a read error or end-of-file condition, getcharreturns EOF, and getwchar returns WEOF. For getchar, use ferror or feof to check for an error or for end of file.
Remarks
Each routine reads a single character from stdin and increments the associated file pointer to point to the next character. getchar is the same as _fgetchar, but it is implemented as a function and as a macro.
These functions lock the calling thread and are therefore thread-safe. For a non-locking version, see _getchar_nolock, _getwchar_nolock.
Generic-Text Routine Mappings
TCHAR.H routine |
_UNICODE & _MBCS not defined |
_MBCS defined |
_UNICODE defined |
---|---|---|---|
_gettchar |
getchar |
getchar |
getwchar |
Requirements
Routine |
Required header |
---|---|
getchar |
<stdio.h> |
getwchar |
<stdio.h> or <wchar.h> |
The console is not supported in Windows Store apps. The standard stream handles that are associated with the console—stdin, stdout, and stderr—must be redirected before C run-time functions can use them in Windows Store apps. For additional compatibility information, see Compatibility.
Example
// 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 text Input was: This text