cgetc.c

来自「Version 6 Unix 核心源代码 Version 6 Unix 核心源」· C语言 代码 · 共 32 行

C
32
字号
# include "ciodec.c"char cgetc(fn){struct fileps *fp;if (nargs() != 1)	IEHzap("cgetc  ");if (fn <0 || fn >15)	IEH3err("cgetc: %d illegal file number",fn);fp = &IEH3fpts[fn];if (fp == 0 || fp->wrflag > 1)	IEH3err("cgetc: %d not open to read",fn);if (fp->wrflag == 0)	/* file not opened with fopen: try making a buffer */	IEH3mbuf (fn, 0);if (fp->eoferr > 1)	return ('\0');if (fp->nchars == 0)	 switch (fp->nchars = read(fn, fp->bptr=fp->buff, fp->bsize))		{		case -1: /* error */			if (fp->eoferr == 0)				IEH3err("cgetc: error on %d",fn);			fp->eoferr = 3;			return ('\0');		case 0: fp->eoferr = 2;			return ('\0');		}fp->nchars--;return (*(fp->bptr++));}cin 0;

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?