home *** CD-ROM | disk | FTP | other *** search
- /***
- *vfprintf.c - fprintf from variable arg list
- *
- * Copyright (c) 1985-1997, Microsoft Corporation. All rights reserved.
- *
- *Purpose:
- * defines vfprintf() - print formatted output, but take args from
- * a stdargs pointer.
- *
- *******************************************************************************/
-
- #include <cruntime.h>
- #include <stdio.h>
- #include <dbgint.h>
- #include <stdarg.h>
- #include <file2.h>
- #include <internal.h>
- #include <mtdll.h>
-
- /***
- *int vfprintf(stream, format, ap) - print to file from varargs
- *
- *Purpose:
- * Performs formatted output to a file. The arg list is a variable
- * argument list pointer.
- *
- *Entry:
- * FILE *stream - stream to write data to
- * char *format - format string containing data format
- * va_list ap - variable arg list pointer
- *
- *Exit:
- * returns number of correctly output characters
- * returns negative number if error occurred
- *
- *Exceptions:
- *
- *******************************************************************************/
-
- int __cdecl vfprintf (
- FILE *str,
- const char *format,
- va_list ap
- )
- /*
- * 'V'ariable argument 'F'ile (stream) 'PRINT', 'F'ormatted
- */
- {
- REG1 FILE *stream;
- REG2 int buffing;
- REG3 int retval;
-
- _ASSERTE(str != NULL);
- _ASSERTE(format != NULL);
-
- /* Init stream pointer */
- stream = str;
-
- _lock_str(stream);
- buffing = _stbuf(stream);
- retval = _output(stream,format,ap );
- _ftbuf(buffing, stream);
- _unlock_str(stream);
-
- return(retval);
- }
-