Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ vprintf(3S) — Amiga System V Release 4 Version 2.1

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

printf(3S)

stdarg(5)



vprintf(3S)          STANDARD I/O FUNCTIONS           vprintf(3S)



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

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

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

     int vsprintf(char *s, const char *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 the <stdarg.h>
     header file.

     The <stdarg.h> header file defines the type  valist  and  a
     set  of  macros  for  advancing  through a list of arguments
     whose number and types may vary.  The  argument  ap  to  the
     vprint family of routines is of type valist.  This argument
     is used with the <stdarg.h>  header  file  macros  vastart,
     vaarg  and  vaend  [see  vastart,  vaarg,  and vaend in
     stdarg(5)].  The EXAMPLE section below shows their use  with
     vprintf.

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

          #include <stdio.h>
          #include <stdarg.h>
          /*
           *   error should be called like
           *         error(functionname, format, arg1, ...);
           */
          void error(char *functionname, char *format, ...)
          {
              valist ap;

              vastart(ap, format);
              /* print out name of function causing error */
              (void) fprintf(stderr, "ERR in %s: ", functionname);
              vaarg(ap, char*);
              /* print out remainder of message */
              (void) vfprintf(stderr, format, ap);
              vaend(ap);
              (void) abort;
          }



          Last change: C Programming Language Utilities         1





vprintf(3S)          STANDARD I/O FUNCTIONS           vprintf(3S)



SEE ALSO
     printf(3S), stdarg(5).

DIAGNOSTICS
     vprintf  and  vfprintf  return  the  number  of   characters
     transmitted, or return -1 if an error was encountered.

















































          Last change: C Programming Language Utilities         2



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