123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566 |
- /*
- * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
- * See the copyright notice in the ACK home directory, in the file "Copyright".
- */
- #define BUFSIZ 1024
- #define _NFILES 20
- #define NULL 0
- #define EOF (-1)
- #define CMASK 0377
- #define IO_READMODE 1
- #define IO_WRITEMODE 2
- #define IO_UNBUFF 4
- #define IO_EOF 8
- #define IO_ERR 16
- #define IO_MYBUF 32
- #define IO_PERPRINTF 64
- #ifndef FILE
- extern struct _io_buf {
- int _fd;
- int _count;
- int _flags;
- unsigned char *_buf;
- unsigned char *_ptr;
- } *_io_table[_NFILES], _stdin, _stdout, _stderr;
- #endif /* FILE */
- #define FILE struct _io_buf
- #define stdin (&_stdin)
- #define stdout (&_stdout)
- #define stderr (&_stderr)
- #define getchar() getc(stdin)
- #define putchar(c) putc(c,stdout)
- #define getc(p) (--(p)->_count >= 0 ? (int) (*(p)->_ptr++) : \
- _fillbuf(p))
- #define putc(c, p) (--(p)->_count >= 0 ? \
- (int) (*(p)->_ptr++ = (c)) : \
- _flushbuf((c),(p)))
- #define feof(p) (((p)->_flags & IO_EOF) != 0)
- #define ferror(p) (((p)->_flags & IO_ERR) != 0)
- #define fileno(p) ((p)->_fd)
- #define io_testflag(p,x) ((p)->_flags & (x))
- /* If you want a stream to be flushed after each printf use:
- *
- * io_perprintf(stream);
- *
- * If you want to stop with this kind of buffering use:
- *
- * io_noperprintf(stream);
- */
- #define io_noperprintf(p) ((p)->_flags &= ~IO_PERPRINTF)
- #define io_perprintf(p) ((p)->_flags |= IO_PERPRINTF)
- extern FILE *fopen(), *fdopen(), *freopen(), *popen();
- extern long ftell();
- extern setbuf(), rewind();
- extern char *fgets(), *gets();
|