int ungetc_char = -1;
+char ungetc_buf[2];
int
getchar ()
i = c;
}
else
- {
- i = ungetc_char;
- ungetc_char = -1;
- }
+ i = ungetc_buf[ungetc_char--];
+
if (i < 0) i += 256;
return i;
}
int
ungetc (int c, int fd)
{
- assert (ungetc_char == -1);
- ungetc_char = c;
+ assert (ungetc_char < 2);
+ ungetc_buf[++ungetc_char] = c;
return c;
}