##
20.1.2 Console I/O

`kbhit`()
  Return true if a keypress is waiting to be read.

`getch`()
  Read a keypress and return the resulting character. Nothing is echoed to the console. This call will block if a keypress is not already available, but will not wait for `Enter` to be pressed. If the pressed key was a special function key, this will return `'\000'` or `'\xe0'`; the next call will return the keycode. The `Control-C` keypress cannot be read with this function.

`getche`()
  Similar to `getch()`, but the keypress will be echoed if it represents a printable character.

`putch`(char)
  Print the character char to the console without buffering.

`ungetch`(char)
  Cause the character char to be ``pushed back'' into the console buffer; it will be the next character read by `getch()` or `getche()`.