fprintf.c
来自「操作系统SunOS 4.1.3版本的源码」· C语言 代码 · 共 52 行
C
52 行
#if !defined(lint) && defined(SCCSIDS)static char sccsid[] = "@(#)fprintf.c 1.1 92/07/30 SMI"; /* from S5R2 1.5 */#endif/*LINTLIBRARY*/#include <stdio.h>#include <varargs.h>#include <errno.h>extern int _doprnt();/*VARARGS2*/intfprintf(iop, format, va_alist)FILE *iop;char *format;va_dcl{ unsigned char localbuf[BUFSIZ]; register int count; va_list ap; va_start(ap); if (!(iop->_flag & _IOWRT)) { /* if no write flag */ if (iop->_flag & _IORW) { /* if ok, cause read-write */ iop->_flag |= _IOWRT; } else { /* else error */#ifdef POSIX errno = EBADF;#endif return EOF; } } if (iop->_flag & _IONBF) { iop->_flag &= ~_IONBF; iop->_ptr = iop->_base = localbuf; iop->_bufsiz = BUFSIZ; count = _doprnt(format, ap, iop); fflush(iop); iop->_flag |= _IONBF; iop->_base = NULL; iop->_bufsiz = 0; iop->_cnt = 0; } else count = _doprnt(format, ap, iop); va_end(ap); return(ferror(iop)? EOF: count);}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?