uvszprintf - Writes formatted data into a buffer, using size and variable
arguments. Allegro game programming library.
#include <allegro.h>
int uvszprintf(char *buf, int size, const char *format, va_list
args);
This is like uszprintf(), but you pass the variable argument list directly,
instead of the arguments themselves. Example:
#include <stdarg.h>
void log_message(const char *format, ...)
{
char buffer[100];
va_list parameters;
va_start(parameters, format);
uvszprintf(buffer, sizeof(buffer), format, parameters);
va_end(parameters);
append_buffer_to_logfile(log_name, buffer);
send_buffer_to_other_networked_players(multicast_ip, buffer);
and_also_print_it_on_the_screen(cool_font, buffer);
}
void some_other_function(void)
{
log_message("Hello %s, are you %d years old?\n", "Dave", 25);
}
Returns the number of characters that would have been written without eventual
truncation (like with uvsprintf), not including the terminating null
character.
uconvert(3), uszprintf(3), uvsprintf(3)