getchar - cppreference.com (original) (raw)

| | | | | -------------------- | | | | int getchar( void ); | | |

Reads the next character from stdin.

Equivalent to getc(stdin).

[edit] Parameters

(none)

[edit] 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.

[edit] Example

Demonstrates getchar with error checking

#include <stdio.h> #include <stdlib.h>   int main(void) { for (int ch; (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; }

Possible output:

abcde End of file reached

[edit] References

[edit] See also