1
0
mirror of https://github.com/cc65/cc65.git synced 2024-12-27 00:29:31 +00:00
cc65/libsrc/common/vfprintf.c

45 lines
630 B
C
Raw Normal View History

/*
* vfprintf.c
*
* Ullrich von Bassewitz, 11.08.1998
*/
#include <stdarg.h>
#include <stdio.h>
#include "_printf.h"
static void out (struct outdesc* d, char* buf, unsigned count)
/* Routine used for writing */
{
/* Write to the file */
if (fwrite (buf, count, 1, (FILE*) d->ptr) == -1) {
d->ccount = -1;
} else {
d->ccount += count;
}
}
int vfprintf (FILE* f, char* format, va_list ap)
{
struct outdesc d;
/* Setup descriptor */
d.fout = out;
d.ptr = f;
/* Do formatting and output */
_printf (&d, format, ap);
/* Return bytes written */
return d.ccount;
}