Annotation of 43BSD/include/stdio.h, revision 1.1.1.1

1.1       root        1: /*
                      2:  * Copyright (c) 1980 Regents of the University of California.
                      3:  * All rights reserved.  The Berkeley software License Agreement
                      4:  * specifies the terms and conditions for redistribution.
                      5:  *
                      6:  *     @(#)stdio.h     5.3 (Berkeley) 3/15/86
                      7:  */
                      8: 
                      9: # ifndef FILE
                     10: #define        BUFSIZ  1024
                     11: extern struct  _iobuf {
                     12:        int     _cnt;
                     13:        char    *_ptr;          /* should be unsigned char */
                     14:        char    *_base;         /* ditto */
                     15:        int     _bufsiz;
                     16:        short   _flag;
                     17:        char    _file;          /* should be short */
                     18: } _iob[];
                     19: 
                     20: #define        _IOREAD 01
                     21: #define        _IOWRT  02
                     22: #define        _IONBF  04
                     23: #define        _IOMYBUF        010
                     24: #define        _IOEOF  020
                     25: #define        _IOERR  040
                     26: #define        _IOSTRG 0100
                     27: #define        _IOLBF  0200
                     28: #define        _IORW   0400
                     29: #define        NULL    0
                     30: #define        FILE    struct _iobuf
                     31: #define        EOF     (-1)
                     32: 
                     33: #define        stdin   (&_iob[0])
                     34: #define        stdout  (&_iob[1])
                     35: #define        stderr  (&_iob[2])
                     36: #ifndef lint
                     37: #define        getc(p)         (--(p)->_cnt>=0? (int)(*(unsigned char *)(p)->_ptr++):_filbuf(p))
                     38: #endif not lint
                     39: #define        getchar()       getc(stdin)
                     40: #ifndef lint
                     41: #define putc(x, p)     (--(p)->_cnt >= 0 ?\
                     42:        (int)(*(unsigned char *)(p)->_ptr++ = (x)) :\
                     43:        (((p)->_flag & _IOLBF) && -(p)->_cnt < (p)->_bufsiz ?\
                     44:                ((*(p)->_ptr = (x)) != '\n' ?\
                     45:                        (int)(*(unsigned char *)(p)->_ptr++) :\
                     46:                        _flsbuf(*(unsigned char *)(p)->_ptr, p)) :\
                     47:                _flsbuf((unsigned char)(x), p)))
                     48: #endif not lint
                     49: #define        putchar(x)      putc(x,stdout)
                     50: #define        feof(p)         (((p)->_flag&_IOEOF)!=0)
                     51: #define        ferror(p)       (((p)->_flag&_IOERR)!=0)
                     52: #define        fileno(p)       ((p)->_file)
                     53: #define        clearerr(p)     ((p)->_flag &= ~(_IOERR|_IOEOF))
                     54: 
                     55: FILE   *fopen();
                     56: FILE   *fdopen();
                     57: FILE   *freopen();
                     58: FILE   *popen();
                     59: long   ftell();
                     60: char   *fgets();
                     61: char   *gets();
                     62: #ifdef vax
                     63: char   *sprintf();             /* too painful to do right */
                     64: #endif
                     65: # endif

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.