⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 vprint.c

📁 UNIX下SH的实现源码
💻 C
字号:
/* vprint.c -- v[fs]printf() for 4.[23] BSD systems. *//* Copyright (C) 1987,1989 Free Software Foundation, Inc.This file is part of GNU Bash, the Bourne Again SHell.Bash is free software; you can redistribute it and/or modify it underthe terms of the GNU General Public License as published by the FreeSoftware Foundation; either version 2, or (at your option) any laterversion.Bash is distributed in the hope that it will be useful, but WITHOUT ANYWARRANTY; without even the implied warranty of MERCHANTABILITY orFITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public Licensefor more details.You should have received a copy of the GNU General Public License alongwith Bash; see the file COPYING.  If not, write to the Free SoftwareFoundation, 59 Temple Place, Suite 330, Boston, MA 02111 USA. */#include <config.h>#if defined (USE_VFPRINTF_EMULATION)#include <stdio.h>#if !defined (NULL)#  if defined (__STDC__)#    define NULL ((void *)0)#  else#    define NULL 0x0#  endif /* __STDC__ */#endif /* !NULL *//* * Beware!  Don't trust the value returned by either of these functions; it * seems that pre-4.3-tahoe implementations of _doprnt () return the first * argument, i.e. a char *. */#include <varargs.h>intvfprintf (iop, fmt, ap)     FILE *iop;     char *fmt;     va_list ap;{  int len;  char localbuf[BUFSIZ];  if (iop->_flag & _IONBF)    {      iop->_flag &= ~_IONBF;      iop->_ptr = iop->_base = localbuf;      len = _doprnt (fmt, ap, iop);      (void) fflush (iop);      iop->_flag |= _IONBF;      iop->_base = NULL;      iop->_bufsiz = 0;      iop->_cnt = 0;    }  else    len = _doprnt (fmt, ap, iop);  return (ferror (iop) ? EOF : len);}/* * Ditto for vsprintf */intvsprintf (str, fmt, ap)     char *str, *fmt;     va_list ap;{  FILE f;  int len;  f._flag = _IOWRT|_IOSTRG;  f._ptr = str;  f._cnt = 32767;  len = _doprnt (fmt, ap, &f);  *f._ptr = 0;  return (len);}#endif /* USE_VFPRINTF_EMULATION */

⌨️ 快捷键说明

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