Annotation of 43BSD/include/stdio.h, revision 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.