This is stdio.h in view mode; [Download] [Up]
/* * Copyright (c) 1980 Regents of the University of California. * All rights reserved. The Berkeley software License Agreement * specifies the terms and conditions for redistribution. * * @(#)stdio.h 5.3 (Berkeley) 3/15/86 */ #ifndef _ANSI_STDIO_H #define _ANSI_STDIO_H #include <standards.h> #if defined(__STRICT_BSD__) || defined(__STRICT_ANSI__) #ifndef NULL #define NULL 0 #endif #else #if defined (__STRICT_ANSI__) #ifndef NULL #define NULL ((void *)0) #endif #else #include <stddef.h> /* get NULL, errno */ #include <stdarg.h> /* get va_list */ #endif #endif /* __STRICT_BSD__ || __STRICT_ANSI__ */ #if defined(_NEXT_SOURCE) || defined(__STRICT_ANSI__) #define BUFSIZ 1024 #endif /* _NEXT_SOURCE || __STRICT_ANSI__ */ extern struct _iobuf { int _cnt; char *_ptr; /* should be unsigned char */ char *_base; /* ditto */ int _bufsiz; short _flag; #ifdef __NeXT__ unsigned char _file; /* should be short */ #else char _file; /* should be short */ #endif char _smallbuf; /* character for unbuf file */ } _iob[]; #define _IOREAD 01 #define _IOWRT 02 #if defined(__STRICT_ANSI__) || defined(_NEXT_SOURCE) #define _IONBF 04 #endif /* __STRICT_ANSI__ || _NEXT_SOURCE */ #define _IOMYBUF 010 #define _IOEOF 020 #define _IOERR 040 #define _IOSTRG 0100 #define _IOLBF 0200 #define _IORW 0400 #if defined(__STRICT_ANSI__) || defined(_NEXT_SOURCE) #define FILE struct _iobuf #define EOF (-1) #define stdin (&_iob[0]) #define stdout (&_iob[1]) #define stderr (&_iob[2]) #endif /* __STRICT_ANSI__ || _NEXT_SOURCE */ #ifdef __STRICT_BSD__ extern char *bsd_sprintf(); extern char *bsd_vsprintf(); #define sprintf bsd_sprintf #define vsprintf bsd_vsprintf extern FILE *fopen(); extern FILE *freopen(); extern long int ftell(); extern char *fgets(); extern char *gets(); #else /* !__STRICT_BSD__ */ #if defined(_NEXT_SOURCE) || defined(__STRICT_ANSI__) #ifndef _SIZE_T #define _SIZE_T typedef unsigned long size_t; #endif /* _SIZE_T */ #ifndef _FPOS_T #define _FPOS_T typedef long fpos_t; #endif /* _FPOS_T */ #define _IOFBF 00 /* any value not equal to */ /* LBF or NBF */ #define L_tmpnam 14 /* large enough to hold */ /* tmpnam result */ #define FOPEN_MAX 256 /* min files guaranteed */ /* open simultaneously */ #define FILENAME_MAX 1024 /* max len string that can */ /* be opened as file */ #define SEEK_SET 0 /* arguments to fseek */ /* function */ #define SEEK_CUR 1 #define SEEK_END 2 #define TMP_MAX 25 /* min unique file names */ /* from tmpnam */ #if __STDC__ extern int remove(const char *filename); extern int rename(const char *old_name, \ const char *new_name); extern FILE *tmpfile(void); extern char *tmpnam(char *s); extern int fclose(FILE *stream); extern int fflush(FILE *stream); extern void setbuf(FILE *stream, char *buf); extern int setvbuf(FILE *stream, char *buf, \ int mode, size_t size); extern int fprintf(FILE *stream, const char \ *format, ...); extern int fscanf(FILE *stream, const char \ *format, ...); extern int printf(const char *format, ...); extern int scanf(const char *format, ...); extern int sprintf(char *s, const char \ *format, ...); extern int sscanf(const char *s, const \ char *format, ...); #ifdef _VA_LIST extern int vfprintf(FILE *stream, \ const char *format, va_list arg); extern int vprintf(const char *format, \ va_list arg); extern int vsprintf(char *s, const \ char *format, va_list arg); #else extern int vfprintf(); extern int vprintf(); extern int vsprintf(); #endif /* _VA_LIST */ extern int fgetc(FILE *stream); extern int fputc(int c, FILE *stream); extern int fputs(const char *s, FILE *stream); extern int getc(FILE *stream); extern int _flsbuf(unsigned char c, FILE *iop); extern int _filbuf(FILE *iop); extern int getchar(void); extern int putc(int c, FILE *stream); extern int putchar(int c); extern int puts(const char *s); extern int ungetc(int c, FILE *stream); extern size_t fread(void *ptr, size_t size, \ size_t nmemb, FILE *stream); extern size_t fwrite(const void *ptr, size_t \ size, size_t nmemb, FILE *stream); extern int fgetpos(FILE *stream, fpos_t *pos); extern int fseek(FILE *stream, long int \ offset, int whence); extern int fsetpos(FILE *stream, const \ fpos_t *pos); extern void rewind(FILE *stream); extern void clearerr(FILE *stream); extern int feof(FILE *stream); extern int ferror(FILE *stream); extern void perror(const char *s); extern FILE *fopen(const char *filename, \ const char *mode); extern FILE *freopen(const char *filename, \ const char *mode, FILE *stream); extern long int ftell(FILE *stream); extern char *fgets(char *s, int n, FILE \ *stream); extern char *gets(char *s); #else extern int remove(); extern int rename(); extern FILE *tmpfile(); extern char *tmpnam(); extern int fclose(); extern int fflush(); extern void setbuf(); extern int setvbuf(); extern int fprintf(); extern int fscanf(); extern int printf(); extern int scanf(); extern int sprintf(); extern int sscanf(); extern int vfprintf(); extern int vprintf(); extern int vsprintf(); extern int fgetc(); extern int fputc(); extern int fputs(); extern int getc(); extern int _flsbuf(); extern int _filbuf(); extern int getchar(); extern int putc(); extern int putchar(); extern int puts(); extern int ungetc(); extern size_t fread(); extern size_t fwrite(); extern int fgetpos(); extern int fseek(); extern int fsetpos(); extern void rewind(); extern void clearerr(); extern int feof(); extern int ferror(); extern void perror(); extern FILE *fopen(); extern FILE *freopen(); extern long int ftell(); extern char *fgets(); extern char *gets(); #endif /* __STDC__ */ #endif /* _NEXT_SOURCE || __STRICT_ANSI__ */ #endif /* __STRICT_BSD__ */ #ifdef _POSIX_SOURCE #define L_ctermid 256 #if __STDC__ extern char *ctermid(char *s); #else extern char *ctermid(); #endif /* __STDC__ */ #endif /* _POSIX_SOURCE */ #if defined(_POSIX_SOURCE) || !defined(__STRICT_ANSI__) #ifdef __STDC__ extern int fileno(FILE *stream); #else extern int fileno(); #endif /* __STDC__ */ #define fileno(p) ((p)->_file) #endif /* _POSIX_SOURCE && !__STRICT_ANSI__ */ #if defined(__STRICT_ANSI__) || defined(_NEXT_SOURCE) #ifndef lint #define getc(p) (--(p)->_cnt>=0? \ (int)(*(unsigned char *)(p)->_ptr++):_filbuf(p)) #endif /* not lint */ #define getchar() getc(stdin) #ifndef lint #define putc(x, p) (--(p)->_cnt >= 0 ?\ (int)(*(unsigned char *)(p)->_ptr++ = (x)) :\ (((p)->_flag & _IOLBF) && -(p)->_cnt < (p)->_bufsiz ?\ ((*(p)->_ptr = (x)) != '\n' ?\ (int)(*(unsigned char *)(p)->_ptr++) :\ _flsbuf(*(unsigned char *)(p)->_ptr, p)) :\ _flsbuf((unsigned char)(x), p))) #endif /* not lint */ #define putchar(x) putc(x,stdout) #define feof(p) (((p)->_flag&_IOEOF)!=0) #define ferror(p) (((p)->_flag&_IOERR)!=0) #define clearerr(p) ((p)->_flag &= ~(_IOERR|_IOEOF)) #endif /* __STRICT_ANSI__ || _NEXT_SOURCE */ #if defined(__STRICT_BSD__) extern FILE *fdopen(); extern FILE *popen(); extern int pclose(); #else #if !defined(__STRICT_ANSI__) || defined(_POSIX_SOURCE) \ || defined(_NEXT_SOURCE) #ifdef __STDC__ extern FILE *fdopen(int fildes, \ const char *mode); #else extern FILE *fdopen(); #endif /* __STDC__ */ #endif /* !__STRICT_ANSI__ || _POSIX_SOURCE || _NEXT_SOURCE */ #if defined(_NEXT_SOURCE) #ifdef __STDC__ extern FILE *popen(const char *command, \ const char *mode); extern int pclose(FILE *stream); #else extern FILE *popen(); extern int pclose(); #endif /* __STDC__ */ #endif /* _NEXT_SOURCE */ #endif /* __STRICT_BSD__ */ #endif /* _ANSI_STDIO_H */
These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.