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
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.
WOW das ging schnell... Das bezog sich mehr auf die überflüssigen nullen ob da 3,5 oder 3.5 steht ist mir wurscht ! Danke !!! ich werds mal ausprobieren
Hi wobei man den Punkt im resultierenden String ja immer noch mit einem Komma ersetzen kann. Oder denke ich jetzt wieder zu einfach? Matthias
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
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.