|
|
1.1 ! root 1: /* @(#)stdio.h 2.7 */ ! 2: #ifndef _NFILE ! 3: #define _NFILE 128 ! 4: ! 5: #if u370 ! 6: #define BUFSIZ 4096 ! 7: #endif ! 8: #if vax || u3b || u3b5 ! 9: #define BUFSIZ 4096 ! 10: #endif ! 11: #if pdp11 ! 12: #define BUFSIZ 512 ! 13: #endif ! 14: ! 15: /* buffer size for multi-character output to unbuffered files */ ! 16: #define _SBFSIZ 8 ! 17: ! 18: typedef struct { ! 19: #if vax || u3b || u3b5 ! 20: int _cnt; ! 21: unsigned char *_ptr; ! 22: #else ! 23: unsigned char *_ptr; ! 24: int _cnt; ! 25: #endif ! 26: unsigned char *_base; ! 27: char _flag; ! 28: char _file; ! 29: } FILE; ! 30: ! 31: /* ! 32: * _IOLBF means that a file's output will be buffered line by line ! 33: * In addition to being flags, _IONBF, _IOLBF and _IOFBF are possible ! 34: * values for "type" in setvbuf. ! 35: */ ! 36: #define _IOFBF 0000 ! 37: #define _IOREAD 0001 ! 38: #define _IOWRT 0002 ! 39: #define _IONBF 0004 ! 40: #define _IOMYBUF 0010 ! 41: #define _IOEOF 0020 ! 42: #define _IOERR 0040 ! 43: #define _IOLBF 0100 ! 44: #define _IORW 0200 ! 45: ! 46: #ifndef NULL ! 47: #define NULL 0 ! 48: #endif ! 49: #ifndef EOF ! 50: #define EOF (-1) ! 51: #endif ! 52: ! 53: #define stdin (&_iob[0]) ! 54: #define stdout (&_iob[1]) ! 55: #define stderr (&_iob[2]) ! 56: ! 57: #define _bufend(p) _bufendtab[(p)->_file] ! 58: #define _bufsiz(p) (_bufend(p) - (p)->_base) ! 59: ! 60: #ifndef lint ! 61: #define getc(p) (--(p)->_cnt < 0 ? _filbuf(p) : (int) *(p)->_ptr++) ! 62: #define putc(x, p) (--(p)->_cnt < 0 ? \ ! 63: _flsbuf((unsigned char) (x), (p)) : \ ! 64: (int) (*(p)->_ptr++ = (unsigned char) (x))) ! 65: #define getchar() getc(stdin) ! 66: #define putchar(x) putc((x), stdout) ! 67: #define clearerr(p) ((void) ((p)->_flag &= ~(_IOERR | _IOEOF))) ! 68: #define feof(p) ((p)->_flag & _IOEOF) ! 69: #define ferror(p) ((p)->_flag & _IOERR) ! 70: #define fileno(p) (p)->_file ! 71: #endif ! 72: ! 73: extern FILE _iob[_NFILE]; ! 74: extern FILE *fopen(), *fdopen(), *freopen(), *popen(), *tmpfile(); ! 75: extern long ftell(); ! 76: extern void rewind(), setbuf(); ! 77: extern char *ctermid(), *cuserid(), *fgets(), *gets(), *tempnam(), *tmpnam(); ! 78: extern unsigned char *_bufendtab[]; ! 79: ! 80: #define L_ctermid 9 ! 81: #define L_cuserid 9 ! 82: #define P_tmpdir "/usr/tmp/" ! 83: #define L_tmpnam (sizeof(P_tmpdir) + 15) ! 84: #endif
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.