Variadiques en cascade

Variadiques en cascade - C - Programmation

Marsh Posté le 14-07-2011 à 11:07:08    

Bonjour,
 
Pouvez-vous m'aider sur une problématique que je n'arrive pas à résoudre ? Et merci de mettre des exemples concrets de solutions que vous pourriez me proposer.
 
J'ai écrit une lib et je la surveille en debug, ce qui m'a conduit à écrire une fonction DEBUG en variadique. Pour différentes raisons ma fonction doit être STATIC et il me faut donc passer par un wrapper, quelque chose comme ceci :
 

Code :
  1. static int _debug ( const char * fmt, ... ) {
  2. ......
  3. }
  4. int debug( const char * fmt, ... ) {
  5. int ret;
  6. va_list ap;
  7. va_start( ap, fmt );
  8. /* ret = _debug( fmt, va_arg( ap, void * ) ); */
  9. ret = _debug( fmt, ap );
  10. va_end( ap );
  11. return ret;
  12. }


 
Et c'est là que ça coince quelquefois, quand par exemple un entier issu d'une fonction est passé par adresse plutôt que par valeur.
Soit je passe tout en pointeur (void *) et je ne résouds pas correctement ceux passés par valeur, soit je passe tout en direct (ap) et je ne résouds pas les pointeurs.
 
Je ne trouve pas de solution.
Toute idée est la bienvenue.
Merci.

Reply

Marsh Posté le 14-07-2011 à 11:07:08   

Reply

Marsh Posté le 14-07-2011 à 14:50:04    

Résolu, merci quand même à vous tous.

Reply

Marsh Posté le 14-07-2011 à 19:07:06    

Noobs69 a écrit :

Résolu, merci quand même à vous tous.


De rien => http://www.developpez.net/forums/d [...] s-cascade/


---------------
Vous ne pouvez pas apporter la prospérité au pauvre en la retirant au riche.
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed