add support for encore
[unix-history] / usr / src / include / stdio.h
... / ...
CommitLineData
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) %G%
7 */
8
9# ifndef FILE
10#define BUFSIZ 1024
11extern 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
55FILE *fopen();
56FILE *fdopen();
57FILE *freopen();
58FILE *popen();
59long ftell();
60char *fgets();
61char *gets();
62#ifdef vax
63char *sprintf(); /* too painful to do right */
64#endif
65# endif