1 /* stdio.h 1.11 85/01/08 */ 2 #define BUFSIZ 1024 3 #define _NFILE 48 4 # ifndef FILE 5 extern struct _iobuf { 6 int _cnt; 7 char *_ptr; 8 char *_base; 9 int _bufsiz; 10 short _flag; 11 char _file; 12 } _iob[_NFILE]; 13 # endif 14 15 #define _IOREAD 01 16 #define _IOWRT 02 17 #define _IONBF 04 18 #define _IOMYBUF 010 19 #define _IOEOF 020 20 #define _IOERR 040 21 #define _IOSTRG 0100 22 #define _IOLBF 0200 23 #define _IORW 0400 24 #define NULL 0 25 #define FILE struct _iobuf 26 #define EOF (-1) 27 28 #define stdin (&_iob[0]) 29 #define stdout (&_iob[1]) 30 #define stderr (&_iob[2]) 31 #define getc(p) (--(p)->_cnt>=0? (int)(*(unsigned char *)(p)->_ptr++):_filbuf(p)) 32 #define getchar() getc(stdin) 33 #define putc(x, p) (--(p)->_cnt >= 0 ?\ 34 (int)(*(unsigned char *)(p)->_ptr++ = (x)) :\ 35 (((p)->_flag & _IOLBF) && -(p)->_cnt < (p)->_bufsiz ?\ 36 ((*(p)->_ptr = (x)) != '\n' ?\ 37 (int)(*(unsigned char *)(p)->_ptr++) :\ 38 _flsbuf(*(unsigned char *)(p)->_ptr, p)) :\ 39 _flsbuf((unsigned char)(x), p))) 40 #define putchar(x) putc(x,stdout) 41 #define feof(p) (((p)->_flag&_IOEOF)!=0) 42 #define ferror(p) (((p)->_flag&_IOERR)!=0) 43 #define fileno(p) ((p)->_file) 44 45 FILE *fopen(); 46 FILE *fdopen(); 47 FILE *freopen(); 48 long ftell(); 49 char *fgets(); 50 char *gets(); 51 #ifdef vax 52 char *sprintf(); /* too painful to do right */ 53 #endif 54