Typenumwandlung Float -> String

Gast #77097
Lesenswert?

Guten Abend!
Mich interessiert mal wie man eine Variable vom Typen "Float" in
"String" umwandeln kann. Mit "Integer" funzt es :

        itoa( iChannel , temp, 10);

... Nur halt nicht mit Float...
also wenn ich z.B. 5,464721 habe soll der mir "5,46" ausgeben  und
nicht "0000005,4647210000"  oder sowas in der Art.

Danke schonmal!

greez
Kofi
Gast #77098
Lesenswert?

Siehe Doku: entweder die volle stdio-Familie (kostet ziemlich viel ROM
und auch RAM, kann dafür fast alles außer Wäschewaschen), oder als
Minimalform dtostrf() (bzw. dtostre()).

Mit Komma als Dezimaltrenner sieht's aber zur Zeit nicht gut aus...
der Punkt ist ziemlich hart im Code drin.  Bliebe Dir als Alternative
wohl nur erstmal, daß Du die entsprechenden Implementierungen der
avr-libc mit in Dein Projekt kopierst und dort lokal modifizierst.
Gast #77101
Lesenswert?

Würde eine Typenumwandlung machen zB. in int (davor mit 100
multiplizieren)oder int Zahlen nehmen, die ich zuvor mit zB.  100 (2
Nachkommastellen) multipliziere. Geht gut wenn du deinen Zahlenbereich
kennst. Spart viel Code.

Josef

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