Stringzahlen in berechenbare Zahlen umwandeln

Gast #19200
Lesenswert?

Hallo!
Folgendes Problem:
Ich habe von einem GPS-Empfänger den Längen- und Breitengrad in
jeweils einen String eingelesen.
zB. [4812.0896] und [1512.3752]
Leider kann ich mit diesem Zahlenformat nicht rechnen.
Wie kann ich so einen String in eine float-Zahl umwandeln?????
Ich verwende CodeVisionAVR und möchte mit einem Mega163 eine kleine 
GPS-Steuerung für mein Modellflugzeug entwerfen.
Für meine Berechnungen ist der Dezimalpunkt unwichtig.
Man könnte also auch in int-Zahlen umwandeln.
Nur wie ist die Frage?

Gibts dazu Befehle oder muß man sich eine Routine schreiben.
Falls dazu eine Routine nötig ist >> ich habe keinen blaßen Schimmer wie 
ich das machen soll >> bitte um Ansatz.
Besten Dank schon mal für euer Interesse!

Max
Gast #19201
Lesenswert?

Die Zahlen sind im ASCII-Format. Du mußt die einzelnen Stellen in 
Zahlenwerte umwandeln. Dezimal "48" repräsentiert ASCII "0", "49"="1" 
usw, bis 9.

Dann mußt Du die einzelnen Stellen mit der entsprechenden Größenordnung 
multiplizieren.

z.B.: "123" ASCII = "49" "50" "51" (so kommen die Zahlen an)
jetzt überall 48 subtrahieren, dann kriegst du "1" "2" "3" raus.
und dann 100 x "1" + 10 x "2" + 1 x "3" = 123

Grüße,
Peter

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren