write formatted output to a file
#include <stdio.h> #include <stdarg.h> int vprintf( const char *format, va_list arg );
The vprintf() function writes output to the file stdout, under control of the argument format. The format string is described under the description of the printf() function. The vprintf() function is equivalent to the printf() function, with the variable argument list replaced with arg, which has been initialized by the va_start() macro.
The vprintf() function returns the number of characters written, or a negative value if an output error occurred. When an error has occurred, errno contains a value that indicates the type of error that has been detected.
_bprintf(), cprintf(), errno, fprintf(), printf(), sprintf() , va_arg(), va_end(), va_start() , _vbprintf(), vcprintf(), vfprintf(), vsprintf()
The following shows the use of vprintf() in a general error message routine:
#include <stdio.h> #include <stdarg.h> void errmsg( char *format, ... ) { va_list arglist; printf( "Error: " ); va_start( arglist, format ); vprintf( format, arglist ); va_end( arglist ); } void main() { errmsg( "%s %d %s", "Failed", 100, "times" ); }
ANSI
All (except DOS/PM)