DOKK / manpages / debian 10 / allegro4-doc / uvszprintf.3alleg4.en
uvszprintf(3alleg4) Allegro manual uvszprintf(3alleg4)

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(3alleg4), uszprintf(3alleg4), uvsprintf(3alleg4)

version 4.4.2 Allegro