Provided by: manpages-de-dev_4.27.0-1_all bug

BEZEICHNUNG

       strtod - konvertiert eine ASCII-Zeichenkette in eine Fließkommazahl

BIBLIOTHEK

       Standard-C-Bibliothek (libc, -lc)

ÜBERSICHT

       #include <stdlib.h>

       double strtod(const char *restrict nzeig,
                     char **_Nullable restrict endzeig);
       float strtof(const char *restrict nzeig,
                     char **_Nullable restrict endzeig);
       long double strtold(const char *restrict nzeig,
                     char **_Nullable restrict endzeig);

   Mit Glibc erforderliche Feature-Test-Makros (siehe feature_test_macros(7)):

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

BESCHREIBUNG

       Die  Funktionen  strtod(), strtof() und strtold() wandeln den ersten Teil der Zeichenkette, auf die nzeig
       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  von
       isspace(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«  oder  »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 VERSIONEN).

RÜCKGABEWERT

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

       Wenn  endzeig  nicht  NULL ist, wird an dem durch endzeig 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 endzeig nicht Null ist) der
       Wert von nzeig wird am Ort gespeichert, auf den endzeig weist.

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

       Verursacht der korrekte Werte eine Bereichsunterschreitung, wird ein Wert zurückgegeben, der nicht größer
       als DBL_MIN, FLT_MIN oder LDBL_MIN ist 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.
       ┌────────────────────────────────────────────────────────────┬───────────────────────┬──────────────────┐
       │ SchnittstelleAttributWert             │
       ├────────────────────────────────────────────────────────────┼───────────────────────┼──────────────────┤
       │ strtod(), strtof(), strtold()                              │ Multithread-Fähigkeit │ MT-Sicher locale │
       └────────────────────────────────────────────────────────────┴───────────────────────┴──────────────────┘

VERSIONEN

       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.

STANDARDS

       C11, POSIX.1-2008.

GESCHICHTE

       strtod()
              C89, POSIX.1-2001.

       strtof()
       strtold()
              C99, POSIX.1-2001.

WARNUNGEN

       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.

BEISPIELE

       Siehe  das  Beispiel  in  der  Handbuchseite  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)

Ü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  die
       Mailingliste der Übersetzer: debian-l10n-german@lists.debian.org.

Linux man-pages 6.9.1                             16. Juni 2024                                        strtod(3)