aboutsummaryrefslogblamecommitdiff
path: root/5.20/getch.c
blob: e41671eb92618192ac76302d196f2b5b27c06561 (plain) (tree)





















                                                   
#include <stdlib.h>
#include <stdio.h>
#include "err.h"
#include "getch.h"

#define MAXBUFF	100

char buff[MAXBUFF];
static size_t top;

void ungetch(char c)
{
	if (top < MAXBUFF)
		buff[top++] = c;
	else
		err("buff: stack overflow");
}

char getch(void)
{
	return (top > 0) ? buff[--top] : getchar();
}