Annotation of mstools/h/stdio.h, revision 1.1.1.1

1.1       root        1: /***
                      2: *stdio.h - definitions/declarations for standard I/O routines
                      3: *
                      4: *      Copyright (c) 1985-1991, Microsoft Corporation. All rights reserved.
                      5: *
                      6: *Purpose:
                      7: *      This file defines the structures, values, macros, and functions
                      8: *      used by the level 2 I/O ("standard I/O") routines.
                      9: *      [ANSI/System V]
                     10: *
                     11: ****/
                     12: 
                     13: #ifndef _INC_STDIO
                     14: 
                     15: #ifdef __cplusplus
                     16: extern "C" {
                     17: #endif
                     18: 
                     19: 
                     20: #if (_MSC_VER <= 600)
                     21: #define __cdecl _cdecl
                     22: #endif
                     23: 
                     24: #ifndef _SIZE_T_DEFINED
                     25: typedef unsigned int size_t;
                     26: #define _SIZE_T_DEFINED
                     27: #endif
                     28: 
                     29: #ifndef _VA_LIST_DEFINED
                     30: typedef char * va_list;
                     31: #define _VA_LIST_DEFINED
                     32: #endif
                     33: 
                     34: 
                     35: /* buffered I/O macros */
                     36: 
                     37: #define BUFSIZ 512
                     38: #ifdef _MT
                     39: #define _NFILE 40
                     40: #else
                     41: #define _NFILE 20
                     42: #endif
                     43: #define EOF    (-1)
                     44: 
                     45: #ifndef _FILE_DEFINED
                     46: struct _iobuf {
                     47:        char *_ptr;
                     48:        int   _cnt;
                     49:        char *_base;
                     50:        int   _flag;
                     51:        int   _file;
                     52:        int   _charbuf;
                     53:        int   _bufsiz;
                     54:        int   __tmpnum;
                     55:        };
                     56: typedef struct _iobuf FILE;
                     57: #define _FILE_DEFINED
                     58: #endif
                     59: 
                     60: /* P_tmpnam: Directory where temporary files may be created.
                     61:  * L_tmpnam size =  size of P_tmpdir
                     62:  *     + 1 (in case P_tmpdir does not end in "\\")
                     63:  *     + 6 (for the temp number string)
                     64:  *     + 1 (for the null terminator)
                     65:  */
                     66: 
                     67: #define _P_tmpdir "\\"
                     68: #define L_tmpnam sizeof(_P_tmpdir)+8
                     69: 
                     70: #define SEEK_CUR 1
                     71: #define SEEK_END 2
                     72: #define SEEK_SET 0
                     73: 
                     74: #define FILENAME_MAX 63
                     75: #define FOPEN_MAX 20
                     76: #define _SYS_OPEN 20
                     77: #define TMP_MAX 32767
                     78: 
                     79: 
                     80: /* define NULL pointer value */
                     81: 
                     82: #ifndef NULL
                     83: #ifdef __cplusplus
                     84: #define NULL   0
                     85: #else
                     86: #define NULL   ((void *)0)
                     87: #endif
                     88: #endif
                     89: 
                     90: 
                     91: /* declare _iob[] array */
                     92: 
                     93: #ifndef _STDIO_DEFINED
                     94: extern FILE _iob[];
                     95: #endif
                     96: 
                     97: 
                     98: /* define file position type */
                     99: 
                    100: #ifndef _FPOS_T_DEFINED
                    101: typedef long fpos_t;
                    102: #define _FPOS_T_DEFINED
                    103: #endif
                    104: 
                    105: 
                    106: #define stdin  (&_iob[0])
                    107: #define stdout (&_iob[1])
                    108: #define stderr (&_iob[2])
                    109: 
                    110: 
                    111: #define _IOREAD        0x0001
                    112: #define _IOWRT         0x0002
                    113: 
                    114: #define _IOFBF         0x0000
                    115: #define _IOLBF         0x0040
                    116: #define _IONBF         0x0004
                    117: 
                    118: #define _IOMYBUF       0x0008
                    119: #define _IOEOF         0x0010
                    120: #define _IOERR         0x0020
                    121: #define _IOSTRG        0x0040
                    122: #define _IORW          0x0080
                    123: 
                    124: 
                    125: /* function prototypes */
                    126: 
                    127: #ifndef _STDIO_DEFINED
                    128: int _filbuf(FILE *);
                    129: int _flsbuf(int, FILE *);
                    130: FILE * _fsopen(const char *, const char *, int);
                    131: void clearerr(FILE *);
                    132: int fclose(FILE *);
                    133: int _fcloseall(void);
                    134: FILE * _fdopen(int, const char *);
                    135: int feof(FILE *);
                    136: int ferror(FILE *);
                    137: int fflush(FILE *);
                    138: int fgetc(FILE *);
                    139: int _fgetchar(void);
                    140: int fgetpos(FILE *, fpos_t *);
                    141: char * fgets(char *, int, FILE *);
                    142: int _fileno(FILE *);
                    143: int _flushall(void);
                    144: FILE * fopen(const char *, const char *);
                    145: int fprintf(FILE *, const char *, ...);
                    146: int fputc(int, FILE *);
                    147: int _fputchar(int);
                    148: int fputs(const char *, FILE *);
                    149: size_t fread(void *, size_t, size_t, FILE *);
                    150: FILE * freopen(const char *, const char *, FILE *);
                    151: int fscanf(FILE *, const char *, ...);
                    152: int fsetpos(FILE *, const fpos_t *);
                    153: int fseek(FILE *, long, int);
                    154: long ftell(FILE *);
                    155: size_t fwrite(const void *, size_t, size_t, FILE *);
                    156: int getc(FILE *);
                    157: int getchar(void);
                    158: char * gets(char *);
                    159: int _getw(FILE *);
                    160: void perror(const char *);
                    161: int _pclose(FILE *);
                    162: FILE * _popen(const char *, const char *);
                    163: int printf(const char *, ...);
                    164: int putc(int, FILE *);
                    165: int putchar(int);
                    166: int puts(const char *);
                    167: int _putw(int, FILE *);
                    168: int remove(const char *);
                    169: int rename(const char *, const char *);
                    170: void rewind(FILE *);
                    171: int _rmtmp(void);
                    172: int scanf(const char *, ...);
                    173: void setbuf(FILE *, char *);
                    174: int setvbuf(FILE *, char *, int, size_t);
                    175: int _snprintf(char *, size_t, const char *, ...);
                    176: int sprintf(char *, const char *, ...);
                    177: int sscanf(const char *, const char *, ...);
                    178: char * _tempnam(char *, char *);
                    179: FILE * tmpfile(void);
                    180: char * tmpnam(char *);
                    181: int ungetc(int, FILE *);
                    182: int _unlink(const char *);
                    183: int vfprintf(FILE *, const char *, va_list);
                    184: int vprintf(const char *, va_list);
                    185: int _vsnprintf(char *, size_t, const char *, va_list);
                    186: int vsprintf(char *, const char *, va_list);
                    187: #define _STDIO_DEFINED
                    188: #endif
                    189: 
                    190: 
                    191: /* macro definitions */
                    192: 
                    193: #define feof(_stream)    ((_stream)->_flag & _IOEOF)
                    194: #define ferror(_stream)   ((_stream)->_flag & _IOERR)
                    195: #define _fileno(_stream)  ((_stream)->_file)
                    196: #define getc(_stream)    (--(_stream)->_cnt >= 0 ? 0xff & *(_stream)->_ptr++ \
                    197:        : _filbuf(_stream))
                    198: #define putc(_c,_stream)  (--(_stream)->_cnt >= 0 \
                    199:        ? 0xff & (*(_stream)->_ptr++ = (char)(_c)) :  _flsbuf((_c),(_stream)))
                    200: #define getchar()        getc(stdin)
                    201: #define putchar(_c)      putc((_c),stdout)
                    202: 
                    203: #ifdef _MT
                    204: #undef getc
                    205: #undef putc
                    206: #undef getchar
                    207: #undef putchar
                    208: #endif
                    209: 
                    210: #if !__STDC__
                    211: /* Non-ANSI names for compatibility */
                    212: 
                    213: #define P_tmpdir  _P_tmpdir
                    214: #define SYS_OPEN  _SYS_OPEN
                    215: 
                    216: #define fcloseall _fcloseall
                    217: #define fdopen   _fdopen
                    218: #define fgetchar  _fgetchar
                    219: #define fileno   _fileno
                    220: #define flushall  _flushall
                    221: #define fputchar  _fputchar
                    222: #define getw     _getw
                    223: #define putw     _putw
                    224: #define rmtmp    _rmtmp
                    225: #define tempnam   _tempnam
                    226: #define unlink   _unlink
                    227: 
                    228: #endif /* __STDC__ */
                    229: 
                    230: #ifdef __cplusplus
                    231: }
                    232: #endif
                    233: 
                    234: #define _INC_STDIO
                    235: #endif /* _INC_STDIO */

unix.superglobalmegacorp.com

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