String als Zahlenwert ausgeben
-
Hi, wie kann ich einen String, der voller hexadezimaler Werte ist (also z.b. {0xFF,0xEE,0xDD};) auch in der Form ausgeben ? Also nicht den Ascii Wert dieser Zahl. In C++ geht ja glaub ich mit cout << hex << ... .
Noch besser wäre es, wenn mir jemand sagen könnte, wie ich diesen String (sind mehr als hundert solcher zeichen) in einen String, der das ganze als 'Text' darstellt/beinhaltet , konvertieren könnte.
Danke!
-
puts("{0xFF,0xEE,0xDD}");
-
for(i=0; i < strlen(string); i++) { sprintf(buf, "0x%.2X ", string[i]); strncat(buf2, buf, 1); }
klein und hässlich
-
sothis_ schrieb:
klein und hässlich
while (*string) buf += sprintf (buf, "%02x", *string++);
noch kleiner aber dafür weniger hässlich.
-
kleinigkeiten-freak schrieb:
sothis_ schrieb:
klein und hässlich
while (*string) buf += sprintf (buf, "%02x", *string++);
noch kleiner aber dafür weniger hässlich.
stimmt. sieht elegant aus, funktioniert aber nicht.
-
sothis_ schrieb:
funktioniert aber nicht.
nicht? warum nicht?
-
Thx, habs mit der for schleife gemacht ( ist kein nullterminierter string) !
-
OldSpraySystem schrieb:
Thx, habs mit der for schleife gemacht ( ist kein nullterminierter string) !
dann funktioniert es mit strlen() aber auch nicht