C / stdio.h / vfprintf
clearerr, fclose, feof, ferror, fflush, fgetc, fgetpos, fgets, fopen, fprintf, fputc, fputs, fread, freopen, fscanf, fseek, fsetpos, ftell, fwrite, getc, getcha, gets, perror, printf, putc, putchar, puts, remove, rename, rewind, scanf, setbuf, setvbuf, sprintf, sscanf, tmpfile, tmpnam, ungetc, » vfprintf, vprintf, vsprintf,
Funcion: vfprintf()
Sintaxis:
int vfprintf(FILE *stream, const char *formato, va_list argumentos);

Descripcion: Esta función es equivalente a fprintf, con la lista de argumentos de variables reemplazado por argumentos, que es inicializado por la macro va_start (y posiblemente por llamadas posteriores a va_arg. La función vfprintf no invoca la macro va_end.
Ejemplo:
#include <stdio.h>
#include <stdarg.h>
 
int mi_vfprintf( FILE *stream, const char *formato, ... )
{
   va_list listaPtr;
   int resultado=0;
 
   va_start( listaPtr, formato );
   resultado = vfprintf( stream, formato, listaPtr );
   va_end( listaPtr );
 
   return resultado;
}
 
int main()
{
   FILE *fichero;
   char nombre[11] = "datos6.dat";
   unsigned int i;
 
   fichero = fopen( nombre, "w" );
   printf( "Fichero: %s -> ", nombre );
   if( fichero )
      printf( "creado (ABIERTO)\n" );
   else
   {
      printf( "Error (NO ABIERTO)\n" );
      return 1;
   }
 
   mi_vfprintf( fichero, "Esto es un ejemplo de usar la funcion \'vfprintf\'\n" );
   mi_vfprintf( fichero, "\t 2\t 3\t 4\n" );
   mi_vfprintf( fichero, "x\tx\tx\tx\n\n" );
   for( i=1; i<=10; i++ )
      mi_vfprintf( fichero, "%d\t%d\t%d\t%d\n", i, i*i, i*i*i, i*i*i*i );
 
   mi_vfprintf( stdout, "Datos guardados en el fichero: %s\n", nombre );
   if( !fclose(fichero) )
      printf( "Fichero cerrado\n" );
   else
   {
      printf( "Error: fichero NO CERRADO\n" );
      return 1;
   }
 
   return 0;
}

Librerias C

Librerias ANSI C
   string.hcstring
   math.hcmath
   stdio.hcstdio
   time.hctime
   stdlib.hcstdlib
   ctype.hcctype
   locale.hclocale
   signal.hcsignal
   setjmp.hcsetjmp

Librerias Borland
   conio.h
   graphics.h