Variable Anzahl von Argumenten direkt an fprintf weitergeben??

Gast #1291684
Lesenswert?

Hallo zusammen,

Ich wollte mal nachfragen, was ich falsch mache?

Ich habe folgende Funktion geschrieben:
1
 
2
int print_debug (char *fmt, ... )
3
{
4
int n;
5

6
va_list ap;
7

8
va_start(ap, *fmt);
9
n=fprintf(&debugout, fmt,  ap);
10
va_end(ap);
11

12
return n;
13
}

aufrufen tu ich die Funktion mit:
1
 
2
print_debug("Test1=%x Test2=%x\n\r",0x55,0x56);

Das Problem ist, dass ich bei der Ausgabe folgendes sehe:

Test1=450 Test2=55 (anstatt: Test1=55 Test2=56 )

Der Sinn der der Sache ist, ich will die Ausgabe später per Befehl 
einschaltbar machen.


Was mache ich falsch? Ist das so wie ich mir das vorstelle überhaupt 
möglich?

Grüße

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren