PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Ein Könogreich für ein Stück Code



axeljaeger
08-07-2002, 15:22
Ich hab ein Problem:
Ich hab drei Byte Daten als Chars vorliegen.

Die will ich jetzt in Text umwandeln, und zwar, dass das Ergebnis so aussieht:

#XXXXXX

also ein HTML-Farbcode. Ich hab das jetzt so gemacht:

cout << "#" << hex << data[0] << hex << data[1] << hex << data[2]

da kommen aber nur unlesbare Zeichen raus. Ich will den numerischen Wert der Chars, nicht etwa den Buchstaben, den sie repräsentieren.

anda_skoa
08-07-2002, 15:52
cout << '#' << hex << (0xFF & data[0]);
cout << (0xFF & data[1]);
cout << (0xFF & data[2]);
cout<< endl;


Ciao,
_

axeljaeger
08-07-2002, 17:30
Das funktioniert schon fast, danke erstmal!

Die Lösung hat nur noch den Schönheitsfehler, das sie "0" und nicht "00" ausgibt, wenn eine "0" in data[index] stand

anda_skoa
08-07-2002, 18:10
cout << '#';
cout.width(2);
cout.fill('0');
cout << hex << (0xFF & data[0]);
cout.width(2);
cout << (0xFF & data[1]);
cout.width(2);
cout << (0xFF & data[2]);
cout<< endl;


Da wird es langsam einfacher, eine Funktion zu schreiben, die die Umwandlung macht.

Ciao,
_