difficultés avec une fonction variadique
Bonjour !
J'ai un peu de mal à comprendre le code suivant (du tuto sur GTK+ ici) :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
| #include <stdarg.h>
#include <stdio.h>
#include <stdlib.h>
#include "error.h"
void print_info (char *format, ...)
{
va_list va;
va_start (va, format);
printf ("Information : ");
vprintf (format, va);
printf ("\n");
}
void print_warning (char *format, ...)
{
va_list va;
va_start (va, format);
fprintf (stderr, "Erreur : ");
vfprintf (stderr, format, va);
fprintf (stderr, "\n");
}
void print_error (char *format, ...)
{
va_list va;
va_start (va, format);
fprintf (stderr, "Erreur fatale : ");
vfprintf (stderr, format, va);
fprintf (stderr, "\n");
exit (EXIT_FAILURE);
} |
Je connais à peu près le fonctionnement des fonctions variadiques, mais là je ne comprends pas (par exemple on utilise pas va_arg ()). Si quelqu'un pouvait m'aider ce serait super ! :D
Merci d'avance...