stdio.h


Función vprintf ANSI C

int vprintf(const char *formato, va_list argumentos);

Esta función es equivalente a fprintf, con la lista de argumentos de variables reemplazado por argumentos, que habrá sido inicializado por la macro va_start (y posiblemente por llamadas posteriores a va_arg. La función vprintf no invoca la macro va_end.

Valor de retorno:

La función vprintf retorna el número de caracteres transmitidos, o un valor negativo si se produce un error de salida.

Ejemplo:

#include <stdio.h>
#include <stdarg.h>

int mi_vprintf( const char *formato, ... )
{
   va_list listaPtr;
   int resultado=0;

   va_start( listaPtr, formato );
   resultado = vprintf( formato, listaPtr );
   va_end( listaPtr );

   return resultado;
}

int main()
{
   char nombre[20];
   unsigned int edad=0;

   mi_vprintf( "Escriba su nombre: " );
   scanf( "%s", nombre );
   mi_vprintf( "Escriba su edad: " );
   scanf( "%u", &edad );

   mi_vprintf( "\nHola %s. Tienes %d anyos.\n", nombre, edad );

   return 0;
}