📄 stdio.h
字号:
/* stdio.h
* Copyright (c) 1990 Intel Corporation, ALL RIGHTS RESERVED.
*
* stdio.h - standard I/O header file
*/
#ifndef _stdio_h
#define _stdio_h
#include <stdarg.h>
#pragma varparams(fprintf, fscanf, printf, scanf, sprintf, sscanf)
#pragma varparams(vfprinf, vprintf, vsprintf, getc, getchar, fgetc)
#pragma varparams(fgets, putc, putchar, fputc, fputs, gets, puts)
#pragma varparams(clearerr, feof, ferror, perror, ungetc)
#pragma varparams(fread, fwrite, fopen, freopen, fclose, fflush)
#pragma varparams(setvbuf, setbuf, fgetpos, fseek, fsetpos, ftell)
#pragma varparams(remove, rename, rewind, tmpfile, tmpnam)
#pragma varparams(_ioread, _iowrite, _read, _write, _fclose, _fopen)
#pragma varparams(_open, _lseek, _flsbuf, _filbuf)
#ifndef NULL
#define NULL ((void *)0)
#endif
#if !defined(FARDATA)
#if _FAR_DATA_ || _FAR_CONST_
#define FARDATA far
#else
#define FARDATA
#endif
#endif
#ifndef _size_t
#define _size_t
typedef unsigned size_t; /* result of sizeof operator */
#endif
#define BUFSIZ 512
#define _NFILE 20
struct _iobuf {
char FARDATA * _ptr;
int _cnt;
char * _base;
char _flag;
char _file;
int _bufsiz;
};
typedef struct _iobuf FILE;
typedef unsigned long fpos_t;
extern FILE _iob[_NFILE];
#define stdin (&_iob[0])
#define stdout (&_iob[1])
#define stderr (&_iob[2])
#define stduser (&_iob[3])
#define EOF (-1)
#define _IOFBF 0
#define _IONBF 04
#define _IOLBF 0100
#define _IOREAD 01
#define _IOWRT 02
#define _IOMYBUF 010
#define _IOEOF 020
#define _IOERR 040
#define _IOSTRG 0100
#define _IORW 0200
#define FOPEN_MAX _NFILE /* stdin, stdout, stderr, stduser */
#define FILENAME_MAX 6
#define SEEK_CUR 1
#define SEEK_END 2
#define SEEK_SET 0
#define L_tmpnam 24
#define P_tmpdir "/tmp"
#define TMP_MAX 32767
int fprintf( FILE *, const FARDATA char *, ... );
int fscanf( FILE *, const FARDATA char *, ... );
int printf( const FARDATA char *, ... );
int scanf( const FARDATA char *, ... );
int sprintf( char *, const FARDATA char *, ... );
int sscanf( const FARDATA char *, const FARDATA char *, ... );
int vfprintf( FILE *, const FARDATA char *, va_list );
int vprintf( const FARDATA char *, va_list );
int vsprintf( char *, const FARDATA char *, va_list );
int getc( FILE * );
int getchar( void );
int fgetc( FILE * );
char * fgets( char *, int, FILE * );
int putc( int, FILE * );
int putchar( int );
int fputc( int, FILE * );
int fputs( const FARDATA char *, FILE * );
char * gets( char * );
int puts( const FARDATA char * );
void clearerr( FILE * );
int feof( FILE * );
int ferror( FILE * );
void perror( const FARDATA char * );
int ungetc( int, FILE * );
/* Direct input/output */
size_t fread( void *, size_t, size_t, FILE * );
size_t fwrite( const FARDATA void *, size_t, size_t, FILE * );
FILE * fopen( const FARDATA char *, const FARDATA char * );
FILE * freopen( const FARDATA char *, const FARDATA char *, FILE * );
int fclose( FILE * );
int fflush( FILE * );
int setvbuf( FILE *, char *, int, size_t );
void setbuf( FILE *, char * );
int fgetpos( FILE * , fpos_t * );
int fseek( FILE * , long , int );
int fsetpos( FILE * , const FARDATA fpos_t * );
long ftell( FILE * );
int remove( const FARDATA char * );
int rename( const FARDATA char *, const FARDATA char * );
void rewind( FILE * );
FILE *tmpfile( void );
char *tmpnam( char * );
/* Low level input/output routines */
int _ioread( FILE * );
int _iowrite( int, FILE * );
size_t _read( FILE *, char *, size_t);
size_t _write( FILE *, char *, size_t);
int _fclose( FILE * );
int _fopen(FARDATA char *, FILE * );
FILE *_open( FARDATA char *, FARDATA char *, FILE * );
long _lseek( FILE *, long, int );
/* Just leave these here */
int _flsbuf( int, FILE * );
int _filbuf( FILE * );
#define getc(p) (--(p)->_cnt>=0? (int)(*(p)->_ptr++&0377):_filbuf(p))
#define getchar() getc(stdin)
#define putc(x,p) (--(p)->_cnt>=0? \
((int)(*(p)->_ptr++=((char)(x)))&0377): \
_flsbuf((unsigned char)(x),p))
#define putchar(x) putc(x,stdout)
#define feof(p) (((p)->_flag&_IOEOF)!=0)
#define ferror(p) (((p)->_flag&_IOERR)!=0)
#define fileno(p) p->_file
#define clearerr(p) ((void)(p->_flag &= ~(_IOEOF|_IOERR)))
#endif /* _stdio_h */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -