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>.