Defined in header <stdio.h> | ||
---|---|---|
int getchar(); |
Reads the next character from stdin
.
Parameters
(none).
Return value
The obtained character on success or EOF
on failure.
If the failure has been caused by end-of-file condition, additionally sets the eof indicator (see feof()
) on stdin
. If the failure has been caused by some other error, sets the error indicator (see ferror()
) on stdin
.
Example
getchar with error checking.
#include <stdio.h> #include <stdlib.h> int main(void) { int ch; while ((ch=getchar()) != EOF) /* read/print "abcde" from stdin */ printf("%c", ch); /* Test reason for reaching EOF. */ if (feof(stdin)) /* if failure caused by end-of-file condition */ puts("End of file reached"); else if (ferror(stdin)) /* if failure caused by some other error */ { perror("getchar()"); fprintf(stderr,"getchar() failed in file %s at line # %d\n", __FILE__,__LINE__-9); exit(EXIT_FAILURE); } return EXIT_SUCCESS; }
Output:
abcde End of file reached
References
- C11 standard (ISO/IEC 9899:2011):
- 7.21.7.6 The getchar function (p: 332)
- C99 standard (ISO/IEC 9899:1999):
- 7.19.7.6 The getchar function (p: 298)
- C89/C90 standard (ISO/IEC 9899:1990):
- 4.9.7.6 The getchar function
See also
gets a character from a file stream (function) | |
C++ documentation for getchar |
Please login to continue.