focal (3) strtod.3.gz

Provided by: manpages-de-dev_2.16-1_all bug

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.

       ┌──────────────────────────────┬───────────────────────┬────────────────┐
       │SchnittstelleAttributWert           │
       ├──────────────────────────────┼───────────────────────┼────────────────┤
       │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.03  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>.