C / stdio.h / setbuf
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: setbuf()
Sintaxis:
void setbuf(FILE *stream, char *acumulador);

Descripcion: Esta función es equivalente a la función setvbuf pasando los valores _IOFBF para modo y BUFSIZ para tamaño, o (si acumulador es un puntero nulo), con el valor _IONBF para modo.

stdout y stdin no son almacenados si no son redirigidos; de lo contrario, son completamente almacenados. "No Almacenados" quiere decir que los caracteres escritos a un stream son inmediatamente transmitidos al fichero o dispostivo, mientras que "Almacenados" significa que los caracteres son acumulados y escritos como un bloque de información. La función setbuf produce resultados impredecibles al menos que que sea llamado después de abrir stream o después de llamar a fseek. Llamando a setbuf después de stream no ha sido almacenado es legal y no causará problemas.

Ejemplo:
#include <stdio.h>
 
int main()
{
  char acumulador[BUFSIZ];
 
  setbuf( stdout, acumulador );
 
  printf( "Esto es una prueba\n" );
  printf( "Este mensaje se mostrara a la vez\n" );
  printf( "setbuf, acumula los datos en un puntero\n" );
  printf( "hasta que se llene completamente\n" );
 
  fflush( stdout );
 
  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