Bonjour,
J'aurai voulue savoir s'il était possible de faire quelque chose dans ce genre la:
Code : Sélectionner tout - Visualiser dans une fenêtre à part #define f1( int arg1, ... ) f2( int arg1, -1, ... )
![]()
Bonjour,
J'aurai voulue savoir s'il était possible de faire quelque chose dans ce genre la:
Code : Sélectionner tout - Visualiser dans une fenêtre à part #define f1( int arg1, ... ) f2( int arg1, -1, ... )
![]()
Oui, comme ca :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 #define debug(level, ...) \ if (debuglvl>=level) \ fprintf(stderr, __VA_ARGS__)
Je pense avoir compris (c'est pas sûr)
Macro à nombre d'arguments variable... En C90, non, alors on utilise le truc de la macro à double parenthèses:Envoyé par gege2061
que l'on appelle comme ça:
Code : Sélectionner tout - Visualiser dans une fenêtre à part #define f1(a) f2 a
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 f1((x, y)); f1((x, y, z));
Attention, __VA_ARGS__ n'existe qu'en C99.Envoyé par D[r
C'est pour ça que je ne l'est pas trouver.Envoyé par Emmanuel Delahaye
Merci pour ta réponse, c'est bete mais fallait y penser, merci beaucoup![]()
et est-ce que ça a un rapport?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 SYNOPSIS #include <sys/varargs.h> void va_start(va_list pvar, void parmN); (type *) va_arg(va_list pvar, type); void va_copy(va_list dest, va_list src); void va_end(va_list pvar);
Envoyé par caribou_belle
: généralement on utilise stdarg.h mais dans ce cas là je ne peut pas l'utiliser !
Partager