ASCII umwandeln
-
Hi zusammen,
ich hab eine Software geschrieben um über RS232 Daten zu versenden und zu empfangen, was auch soweit gut funktioniert. Allerdings hab ich jetzt das Problem, dass die empfangenen Daten in Hexadezimaler ASCII Notation ankommen, ich aber das jeweilig richtige Zeichen ausgeben möchte.
Jemand ne Idee oder sogar die Lösung?
Schon mal vielen dank

/edit
Nur zur Veranschaulichung:
Ich sende "3" und bekomme "51"
Ich sende "b" und bekomme "98"
-
Hallo
Du kannst int und char direkt miteinander zuweisen
char x = '3'; int y = x; x = y;Intern sind alle integralen Typen übrigens binär, nicht hexadezimal oder dezimal.
Es ist immer nur eine Frage der Ausgabekonvention für den User.bis bald
akari
-
Hui das hat direkt funktioniert, ich danke Dir!
-
Ok, ich hab da noch mal eine erweiterte Frage zu diesem Thema:
Der oben gezeigte Lösungsansatz hat nun denn wirklich funktioniert, jetzt hab ich aber mal was ganz Seltsames erlebt...
Wenn ich nämlich diese Konvertierung auskommentiere, sollte er mir ja wieder die, in meinem ersten Beitrag, erwähnte Notation ausgeben. Tut er aber nicht!Ich kriege jetzt sowohl mit:
int x = ReceivedData; ReceivedData = x; Form1 -> Edit3 -> Text = ReceivedData; return true;als auch mit:
//int x = ReceivedData; //ReceivedData = x; Form1 -> Edit3 -> Text = ReceivedData; return true;die "richtigen" Zeichen ausgegeben...
WARUM?

/edit:
Ach ja -> ReceivedData ist vom Typ 'char'