strtod

STRTOD(3)                  Linux-Programmierhandbuch                 STRTOD(3)



BEZEICHNUNG
       strtod - konvertiert eine ASCII-Zeichenkette in eine FlieÃkommazahl

ÃBERSICHT
       #include <stdlib.h>

       double strtod(const char *nptr, char **endptr);
       float strtof(const char *nptr, char **endptr);
       long double strtold(const char *nptr, char **endptr);

   Mit Glibc erforderliche Makros (siehe feature_test_macros(7)):

       strtof(), strtold():
           _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L

BESCHREIBUNG
       Die Funktionen strtod(), strtof(), and strtold()  wandeln den ersten
       Teil der Zeichenkette, auf die nptr zeigt, in die entsprechende
       double-, float- und long double-Darstellung um.

       Es wird die folgende Form (des Anfangs) der Zeichenkette erwartet :
       optionale Leerzeichen, wie sie vonisspace(3) erkannt werden, ein
       optionales Plus- '+') oder Minus-Zeichen ('-') und dann entweder (i)
       eine Dezimalzahl oder (ii) eine Hexadezimalzahl oder (iii) ein
       unendlicher Wert oder (iv) keine Zahl (ein NAN, not-a-number).

       Eine Dezimalzahl besteht aus einer nicht leeren Folge von
       Dezimalziffern, die möglicherweise ein Radix-Zeichen enthält
       (Dezimalpunkt, von der Locale abhängig, meistens '.'), optional
       gefolgt von einem dezimalen Exponenten. Ein dezimaler Exponent besteht
       aus einem 'E' oder 'e', gefolgt von einer nicht leeren Folge von
       Dezimalziffern. Er bedeutet eine Multiplikation mit einer Potenz von
       10.

       Eine Hexadezimalzahl besteht aus einem »0x« oder »0X« gefolgt von
       einer nicht leeren Folge von Hexadezimalziffern (die vielleicht ein
       Radix-Zeichen enthält), der optional ein binärer Exponent folgt. Ein
       binärer Exponent besteht aus einem 'P' oderr 'p', gefolgt von einem
       optionalen Plus- oder Minuszeichen, gefolgt von einer nicht leeren
       Folge von Dezimalziffern, die für die Multiplikation mit einer Potenz
       von 2 steht. Mindestens ein Radix-Zeichen und ein binärer Exponent
       müssen vorhanden sein.

       Ein unendlicher Wert ist ungeachtet der Gross- oder Kleinschreibung
       entweder  »INF« oder »INFINITY«.

       Ein NAN ist (ungeachtet der GroÃ- oder Kleinschreibung) ein »NAN«,
       optional gefolgt von einer Zeichenkette (n-char-sequence). Die
       Zeichenfolge beschreibt auf implementationsabhängige Weise den Typ des
       NaNs (siehe ANMERKUNGEN).

RÃCKGABEWERT
       Diese Funktionen liefern den umgewandelten Wert zurück, wenn er
       existiert.

       Wenn endptr nicht NULL ist, wird an dem durch endptr bestimmten Ort ein
       Zeiger auf das erste Zeichen gespeichert, das nicht mehr zur
       Konvertierung herangezogen wurde.

       Wenn keine Konvertierung stattgefunden hat, wird 0 zurückgeliefert und
       (falls endptr nicht Null ist) der Wert von nptr wird am Ort
       gespeichert, auf den endptr weist.

       Falls der korrekte Wert einen Ãberlauf verursacht, wird plus oder minus
       HUGE_VAL (HUGE_VALF, HUGE_VALL) zurückgegeben (abhängig vom
       Vorzeichen des Wertes) und ERANGE wird in errno gespeichert. Verursacht
       der korrekte Werte eine Bereichsunterschreitung, wird 0 zurückgegeben
       und ERANGE wird in errno gespeichert.

FEHLER
       ERANGE Ãberlauf oder Bereichsunterschreitung aufgetreten

ATTRIBUTE
       Siehe attributes(7) für eine Erläuterung der in diesem Abschnitt
       verwandten Ausdrücke.

       ┌──────────────────────────────┬────────────────────────┬────────────────┐
       │Schnittstelle                 Attribut               Wert           │
       ├──────────────────────────────┼────────────────────────┼────────────────┤
       │strtod(), strtof(), strtold() │ Multithread-Fähigkeit │ MT-Safe locale │
       └──────────────────────────────┴────────────────────────┴────────────────┘
KONFORM ZU
       POSIX.1-2001, POSIX.1-2008, C99.

       strtod() wurde auch in C89 beschrieben.

ANMERKUNGEN
       Da 0 ein legitimer Rückgabewert sowohl bei Erfolg als auch bei
       Misserfolg zurückgegeben werden kann, sollte das aufrufende Programm
       errno vor dem Aufruf auf 0 setzen und nach dem Aufruf prüfen, ob errno
       einen Wert ungleich Null hat.

       In der Glibc-Implementierung wird die n-char-sequence, der optional ein
       »NAN« folgt, als Ganzzahl interpretiert (mit einem optionalen Präfix
       »0« oder »0x«, um entweder 8 oder 16 als Basis zu wählen), die in
       die Mantissen-Komponente des zurückgegebenen Wertes gesetzt wird.

BEISPIEL
       Siehe das Beispiel in der Handbuchseite von strtol(3); die Verwendung
       der in dieser Handbuchseite beschriebenen Funktionen ist ähnlich.

SIEHE AUCH
       atof(3), atoi(3), atol(3), nan(3), nanf(3), nanl(3), strfromd(3),
       strtol(3), strtoul(3)

KOLOPHON
       Diese Seite ist Teil der Veröffentlichung 5.02 des Projekts
       Linux-man-pages. Eine Beschreibung des Projekts, Informationen, wie
       Fehler gemeldet werden können sowie die aktuelle Version dieser Seite
       finden sich unter https://www.kernel.org/doc/man-pages/.


ÃBERSETZUNG
       Die deutsche Ãbersetzung dieser Handbuchseite wurde von Martin Eberhard
       Schauer <Martin.E.Schauer@gmx.de> und Mario Blättermann
       <mario.blaettermann@gmail.com> erstellt.

       Diese Ãbersetzung ist Freie Dokumentation; lesen Sie die GNU General
       Public License Version 3 oder neuer bezüglich der Copyright-
       Bedingungen. Es wird KEINE HAFTUNG übernommen.

       Wenn Sie Fehler in der Ãbersetzung dieser Handbuchseite finden,
       schicken Sie bitte eine E-Mail an <debian-l10n-
       german@lists.debian.org>.



Linux                         15. September 2017                     STRTOD(3)