ellipse : Passage d'arguments multiples (stdarg)
Bonjour,
J'ai une fonction privée dans une librairie comme ceci :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
|
static int
pipo (char *blablabla, char *fmt, ...)
{
va_list argptr;
int rc = 0;
va_start (argptr, fmt);
/* ceci est un exemple, mais peut être autre chose */
printf ("%s", blablabla);
rc = vprintf (fmt, argptr);
va_end (argptr);
return (rc);
} |
et je voudrais créer des fonctions publiques qui s'utiliseraient un peu comme ceci :
Code:
1 2 3
|
rc = pipo_cas_particulier_1 (<mes arguments ici>);
rc = pipo_cas_particulier_2 (<mes arguments ici>); |
et qui ferait en fait :
Code:
1 2 3
|
rc = pipo ("description du cas 1", <mes arguments ici>);
rc = pipo ("description du cas 2", <mes arguments ici>); |
Quelque chose qui serait codé du genre :
(mais c'est bien entendu faux)
Code:
1 2 3 4 5 6
|
int
pipo_cas_particulier_1 (char *fmt, ...)
{
return pipo ("description du cas 1", ...);
} |
Comment faire pour passer les ellipses au sous-fonctions ?
Merci.