ungetch

From RAD Studio
Jump to: navigation, search

Go Up to conio.h Index

Header File

conio.h

Category

Console I/O Routines

Prototype

int ungetch(int ch);

Description

Pushes a character back to the keyboard buffer.

Note: Do not use this function in Win32 GUI applications.

ungetch pushes the character ch back to the console, causing ch to be the next character read. The ungetch function fails if it is called more than once before the next read.

Return Value

On success, ungetch returns the character ch.

On error, it returns EOF.

Example

#include <stdio.h>
#include <ctype.h>
#include <conio.h>
int main( void )
{
   int i=0;
   char ch;
   puts("Input an integer followed by a char:");
   /* read chars until non digit or EOF */
   while((ch = getche()) != EOF && isdigit(ch))
      i = 10 * i + ch - 48; /* convert ASCII into int value */
   /* if non digit char was read, push it back into input buffer */
   if (ch != EOF)
      ungetch(ch);
   printf("\n\ni = %d, next char in buffer = %c\n", i, getch());
   return 0;
}

Portability

POSIX Win32 ANSI C ANSI C++

+