Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ vprintf(3S) — sys5 — Apollo

Media Vault

Software Library

Restoration Projects

Artifacts Sought



VPRINTF(3S)     DOMAIN/IX Reference Manual (SYS5)     VPRINTF(3S)



NAME
     vprintf, vfprintf, vsprintf - print formatted output of a
     varargs argument list

USAGE
     #include <stdio.h>
     #include <varargs.h>

     int vprintf (format, ap)
     char *format;
     valist ap;

     int vfprintf (stream, format, ap)
     FILE *stream;
     char *format;
     valist ap;

     int vsprintf (s, format, ap)
     char *s, *format;
     valist ap;

DESCRIPTION
     Vprintf, vfprintf, and vsprintf are the same as printf,
     fprintf, and sprintf respectively, except that, instead of
     being called with a variable number of arguments, they are
     called with an argument list as defined by varargs(5).

EXAMPLE
     The following demonstrates how vfprintf could be used to
     write an error routine.

     #include <stdio.h>
     #include <varargs.h>
          .
          .
          .
     /*
      *   error should be called like
      *        error(function_name, format, arg1, arg2...);
      */
     /*VARARGS0*/
     void
     error(va_alist)
     /* Note that the function_name and format arguments cannot be
      *      separately declared because of the definition of varargs.
      */
     va_dcl
     {
          va_list args;
          char *fmt;

          va_start(args);



Printed 5/10/85                                         VPRINTF-1





VPRINTF(3S)     DOMAIN/IX Reference Manual (SYS5)     VPRINTF(3S)



          /* print out name of function causing error */
          (void)fprintf(stderr, "ERROR in %s: ", va_arg(args, char *));
          fmt = va_arg(args, char *);
          /* print out remainder of message */
          (void)vfprintf(fmt, args);
          va_end(args);
          (void)abort( );
     }

RELATED INFORMATION
     vprintf(3X), varargs(5)












































VPRINTF-2                                         Printed 5/10/85



Typewritten Software • bear@typewritten.org • Edmonds, WA 98026