Konvertierung von char zu hex

touristguy

Mitglied
Hallo,
könnte mir jemand einen Tip geben, wie ich von einer char Variable die Werte in hex in eine Integerzahl bekommen.
Mein Problem ist so, ich bekomme über eine Funktion welche Eingaben über die serielle Schnittstelle einliest die Daten in char Format. Nun möchte ich aber die Empfangenen Werte, z.b. SeriellBuffer[0] = 'F', SeriellBuffer[1] = '4' umrechnen in Hexwerte um dann den Wert 0xF4 zu erhalten. Gibt es dafür eventuell schon eine Funktion? Ich habe mir überlegt ob ich eine Abfrage mit den Werten des ASCII-Zeichensatzes mache.
Vielen Dank.

Gruß Phil
 
Vielen Dank für die Antwort.
Ich habe auch noch eine Funktion gefunden mit der man die Daten umwandeln kann. Für alle die das selbe Problem haben wie ich.
strtod
Mit dieser Funktion kann man einen String direkt in eine double Zahl umwandeln. Von da ab sollte es dann ohne Probleme weitergehen.

Gruß Philip
 
Vielen Dank für die Antwort.
Ich habe auch noch eine Funktion gefunden mit der man die Daten umwandeln kann. Für alle die das selbe Problem haben wie ich.
strtod
Mit dieser Funktion kann man einen String direkt in eine double Zahl umwandeln. Von da ab sollte es dann ohne Probleme weitergehen.
Du kennst aber schon den Unterschied zwischen Integer und Fließkommazahlen? Abgesehen davon interpretiert strtod keine hexadezimale Schreibweise. Oder wolltest du das jetzt einfach mal loswerden obwohl es nicht zum Thema passt?

Außerdem sind die atoi, strtod usw. Funktionen relativ unsicher und man sollte sie nur einsetzen wenn man weiß, dass in dem String auch wirklich eine entsprechende Zahl steht. Ansonsten hat man das Problem das man nicht weiß ob jetzt in dem String eine 0 stand oder ob einfach die Konvertierung fehlgeschlagen ist.

Gruß
 
Zurück