"\x%x",a geht nicht :(
-
wieso kann ich anstelle einer ausgabe wie
x.write((unsigned char*)"\x61",1);
nicht
unsigned int a; a = 97; a = x.write((unsigned char*)("\x%x",a),1);
verwenden???
der compiler (dev-cpp (minigw meine ich)) spuckt dann immer
"\x used with no following hex digits" aus.was kann ich statt dessen tun?
die variablen "dürfen" nicht als esqape initialisiert sein sondern nur als int!danke
-
der kleine paddy schrieb:
wieso kann ich anstelle einer ausgabe wie
x.write((unsigned char*)"\x61",1);
nicht
unsigned int a; a = 97; a = x.write((unsigned char*)("\x%x",a),1);
verwenden???
Weil die Ersetzung der Formatplatzhalter nicht einfach so gemacht wird, sondern von der printf-Funktion und ihren Schwestern.
der compiler (dev-cpp (minigw meine ich)) spuckt dann immer
"\x used with no following hex digits" aus.Mit Recht, da ist ja auch ein Prozentzeichen.
EDIT: Mist entfernt
-
unsigned char a = 97; a = x.write(&a,1);