dos_compilers/Intel iC-86 Compiler v4.5/INC/STDIO.H
2024-07-04 06:47:32 -07:00

179 lines
5.2 KiB
C

/* stdio.h - standard I/O header file
* $Version: 1.46 $
* Copyright (c) 1988-91 Intel Corporation, ALL RIGHTS RESERVED.
*/
#ifndef _stdioh
#define _stdioh
/*lint -library */
#pragma fixedparams("rename", "tempnam", "tmpnam")
#pragma fixedparams("_fsopen")
#pragma fixedparams("clearerr")
#pragma fixedparams("fclose", "feof", "ferror", "fflush", "fgetc")
#pragma fixedparams("fgets", "fopen", "fputc", "fputs", "fread")
#pragma fixedparams("freopen", "fseek", "ftell", "fwrite", "getc")
#pragma fixedparams("getchar", "gets", "perror", "putc", "putchar")
#pragma fixedparams("puts", "remove", "rewind", "setbuf", "setvbuf")
#pragma fixedparams("tmpfile", "ungetc", "vfprintf", "vprintf", "vsprintf")
#pragma fixedparams("fgetpos", "fsetpos")
#pragma fixedparams("fcloseall", "fdopen", "fgetchar", "fileno", "flushall")
#pragma fixedparams("fputchar", "getw", "putw", "rmtmp")
#pragma varparams("fprintf", "fscanf", "printf", "scanf", "sprintf")
#pragma varparams("sscanf")
#ifndef NULL
#define NULL ((void *)0)
#endif
#ifndef _fpos_t
#define _fpos_t
typedef unsigned long fpos_t;
#endif
#ifndef _size_t
#define _size_t
typedef unsigned size_t;
#endif
#ifndef _va_list
typedef char *va_list;
#define _VA_LIST_DEFINED
#define _va_list
#endif
#define BUFSIZ 512
#define FOPEN_MAX 20
#define TMP_MAX 4096
#define FILENAME_MAX 127
#define EOF (-1)
#define L_tmpnam 13
#define P_tmpdir "\\"
#define _IOREAD 0x01
#define _IOWRT 0x02
#define _IOFBF 0x00 /* neither line nor char buffering */
#define _IOLBF 0x40
#define _IONBF 0x04
#define _IOMYBUF 0x08
#define _IOEOF 0x10
#define _IOERR 0x20
#define _IOSTRG 0x40
#define _IORW 0x80
#define _IODIRTY 0x200
#define _IO_STD_STREAM 0x1000
/* seek */
#ifndef SEEK_SET
#define SEEK_SET 0
#define SEEK_CUR 1
#define SEEK_END 2
#endif
#ifndef _reenth
#pragma align (_iobuf)
#endif
#ifndef _FILE_t
struct _iobuf {
unsigned char *_ptr;
int _cnt;
unsigned char *_base;
int _flag;
int _fd; /* File descriptor number */
int _size; /* File buffer size */
char *_temp_name; /* Temporary file name */
void *_sem; /* Semaphore */
struct _iobuf *_next_stream; /* Pointer to the next stream */
};
typedef struct _iobuf FILE;
#define _FILE_t
#endif
#include <reent.h>
#define stdin (&_stdio_ptr()->_stdin)
#define stdout (&_stdio_ptr()->_stdout)
#define stderr (&_stdio_ptr()->_stderr)
/*
* Function prototypes:
*/
void clearerr(FILE *);
int fclose(FILE *);
int fcloseall(void);
FILE *fdopen(int, const char *);
int feof(FILE *);
int ferror(FILE *);
int fflush(FILE *);
int fgetc(FILE *);
int fgetchar(void);
int fgetpos(FILE *, fpos_t *);
char *fgets(char *, int, FILE *);
int fileno(FILE *);
int flushall(void);
FILE *fopen(const char *, const char *);
int fprintf(FILE *, const char *, ...);
int fputc(int, FILE *);
int fputchar(int);
int fputs(const char *, FILE *);
size_t fread(void *, size_t, size_t, FILE *);
FILE *freopen(const char *, const char *, FILE *);
int fscanf(FILE *, const char *, ...);
int fseek(FILE *, long int, int);
int fsetpos(FILE *, const fpos_t *);
FILE *_fsopen(const char *, const char *, int);
long int ftell(FILE *);
size_t fwrite(const void *, size_t, size_t, FILE *);
int getc(FILE *);
int getchar(void);
char *gets(char *);
int getw(FILE *);
void perror(const char *);
int printf(const char *, ...);
int putc(int, FILE *);
int putchar(int);
int puts(const char *);
int putw(int, FILE *);
int remove(const char *);
int rename(const char *, const char *);
void rewind(FILE *);
int rmtmp(void);
int scanf(const char *, ...);
void setbuf(FILE *, char *);
int setvbuf(FILE *, char *, int, size_t);
int sprintf(char *, const char *, ...);
int sscanf(const char *, const char *, ...);
char *tempnam(char *, const char *);
FILE *tmpfile(void);
char *tmpnam(char *);
int ungetc(int, FILE *);
int vfprintf(FILE *, const char *, va_list);
int vprintf( const char *, va_list);
int vsprintf(char *, const char *, va_list);
/*
* Macro implementation of stdio functions:
*/
#define feof(f) ((f)->_flag & _IOEOF)
#define ferror(f) ((f)->_flag & _IOERR)
#define fgetchar() fgetc(stdin)
#define fileno(f) ((f)->_fd)
#define getchar() getc(stdin)
#define putchar(c) putc((c),stdout)
#define _ungetc_
#define getc(_s) (((((_s)->_cnt) > 0) && (((_s)->_cnt) < ((_s)->_size))) \
? (((_s)->_cnt--), (unsigned char)(*(_s)->_ptr++)) : ((getc)(_s)))
#define putc(_c,_s) (((((_s)->_cnt) > 0) && (((_s)->_cnt) < ((_s)->_size))) \
? (((_s)->_cnt--), (*((_s)->_ptr++)=(unsigned char)(_c))) : ((putc)(_c,_s)))
#endif /* _stdioh */