Utiliser un tableau comme liste d'arguments variable
Bonjour,
Est-ce que ce code est portable :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
| #include <stdio.h>
#include <stdarg.h>
static void foo_va (int nb, va_list ap)
{
printf ("%d : ", nb);
for (int i = 0; i < nb; i++)
{
const char *x = va_arg (ap, const char *);
printf ("%s, ", x);
}
printf ("\n");
}
int main (void)
{
const char *tab[3] = {"test", "toto", "titi"};
foo_va (3, (va_list)tab);
return 0;
} |
Sachant que ce code est prévu pour fonctionner uniquement avec des pointeurs de char.
Merci d'avance ;)