hex einlesen und abspeichern
-
bei:
stringstream str; str << "0500"; str >> std::hex >> integer_value;das klappt nicht, warum?
-
str << "05"; str >> std::hex >> char_value;da kommt dann char_value == 48 warum?
-
julian1 schrieb:
bei:
stringstream str; str << "0500"; str >> std::hex >> integer_value;das klappt nicht, warum?
Was klappt nicht?
Was kommt raus und was erwartest du?
-
julian1 schrieb:
str << "05"; str >> std::hex >> char_value;da kommt dann char_value == 48 warum?
Weil er char als zeichen interpretiert
-
will aber 5 in char_value haben!
-
justin1 schrieb:
will aber 5 in char_value haben!
std::stringstream str("5"); char v; str >> v;Wenn du "05" hast, wird hald zuerst nur ein Zeichen gelesen, also 0, und das ist als Dezimal 48. (ASCII).
Dann hast du 5 als Zeichen in v und kannst es ausgeben.
-
str << "05"; str >> std::hex >> char_value; char_value = (int)char_value; //?????
-
julian1 schrieb:
str << "05"; str >> std::hex >> char_value; char_value = (int)char_value; //?????Erklär bitte mal genau, was du willst. Uns ist schon klar, was da passiert, aber dir anscheinend nicht, also sag mal, was du denkst, dass da kommen sollte.
-
ich lese einen hex wert ein und gebe in in eine struktur...den wert der struktur schreibe ich in eine textbox hinein!
wenn ich nun "05" einlese als hex will ich die char value befüllen...und die value der textbox zuweisen...dort soll halt dann 5 als dez stehen...
-
Dann ist aber ein char der falsche Datentyp dafür.
Liest, wie oben beschrieben in einen integer ein und (falls nötig) kannst du den dan immernoch in einen string reinquetschen.