Read 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, getchar returns 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> | 
For additional compatibility information, see Compatibility in the Introduction.
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