Forum: Mikrocontroller und Digitale Elektronik Funktion die eine float zahl in einen string umwandelt


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von samuel (Gast)


Lesenswert?

hallo,
weiss jemand ob es eine funktion gibt die eine float zahl in einen
string umwandelt?
sowie ich sehen kann gibt es diese Funktion in der standardlibary
nicht.
gibt es zusätzliche dateien , die man includieren kann, die solche
funktionen beinhalten?

von Matthias (Gast)


Lesenswert?

Hi

sprintf

Matthias

von samuel (Gast)


Lesenswert?

und wie?

die beiden Übergabe parameter von sprintf haben als datentyp char*.
kann man dann die float zahl auf char* casten?

von Matthias (Gast)


Lesenswert?

Hi

RTFM
&
UAFSE
http://www.cplusplus.com/ref/cstdio/sprintf.html

Matthias heute wortkarg

von Bernhard Walle (Gast)


Lesenswert?

Beispiel:

float f = 3.3;
char string[20];
snprintf(string, 20, "%f", f);

von samuel (Gast)


Lesenswert?

wenn ich folgendes mache

u32 u;
char *string[20];

sprintf(string,"%u", u);

kommen total falsche werte raus:
wenn z.B. u=521365 war ...steht nach dem sprintf aufruf in string 7
drin...wieso das?
snprintf hab ich bei meinem compiler nicht zur verfügung....obwohl ich
string.h includiert habe

von samuel (Gast)


Lesenswert?

ok...och habs hinbekommen:
wenn man

sprintf(string,"%lu", u);

schreibt dann passts

von Rufus T. Firefly (Gast)


Lesenswert?

Ach samuel,

  char *string[20];

  sprintf(string,"%u", u);

sowas geht aus ganz anderen Gründen in die Hose.
Was denkst Du denn, was string für eine Variable sein mag?

Sieh Dir Deine Deklaration mal genauer an.

Und lies ENDLICH mal ein Buch über C durch!

von Josef (Gast)


Lesenswert?

sprintf ist die schlechteste Variante.

von Josef (Gast)


Lesenswert?

void ftoa(float n, unsigned char decimals, char *str)

  converts the floating point number n to characters in string str.
The number is represented with a specified number of decimals.

von Matthias (Gast)


Lesenswert?

Hi

sprintf ist laut ANSI Standard ein Sprachbestandteil von C. ftoa(...)
AFAIK aber keineswegs.

Matthias

von samuel (Gast)


Lesenswert?

genau....ftoa gibt es in meienr libary nicht

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.