Your Browser is not longer supported
Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...
{{viewport.spaceProperty.prod}}
atof - Zeichenkette in Gleitpunktzahl umwandeln
&pagelevel(4)&pagelevel
Definition | #include <stdlib.h> double atof(const char *str); |
Beschreibung | atof() wandelt eine EBCDIC-Zeichenkette, auf die str zeigt, in eine Gleitpunktzahl vom Typ double um. Die umzuwandelnde Zeichenkette kann wie folgt aufgebaut sein:
[{ tab| 'BLANK'}...][+|-][ digit...][.][ digit...][{E|e}[+|-] digit...]
oder
[{ tab| 'BLANK'}...][+|-]0{X|x}[ hexdigit...][.][ hexdigit...][{P|p}[+|-] digit ...]
Für tab sind alle Zwischenraumzeichen zulässig (siehe Definition bei isspace() ). Die Funktion atof(str) unterscheidet sich von strtod(str,(char **)NULL) nur durch die Fehlerbehandlung. |
Returnwert | Gleitpunktzahl vom Typ double |
|
| für Zeichenketten, die eine wie oben beschriebene Struktur haben und einen Zahlenwert darstellen, der im zulässigen Gleitpunktbereich liegt. |
| Erweiterung |
| 0 | für Zeichenketten, die nicht der oben beschriebenen Syntax entsprechen. |
| HUGE_VAL
| für Zeichenketten, deren Zahlenwert außerhalb des zulässigen Gleitpunktbereichs liegt. errno wird gesetzt, um den Fehler anzuzeigen. |
Fehler | atof() schlägt fehl, wenn gilt:
|
| ERANGE
| Der Returnwert verursacht einen Über- oder Unterlauf. (Ende) |
Hinweise | atof() ist vollständig enthalten in strtod() . Die Funktion wird jedoch weiterhin angeboten, da sie in vielen existierenden Anwendungen eingesetzt ist.
Das Dezimalzeichen in der umzuwandelnden Zeichenkette wird durch die Lokalität (Kategorie LC_NUMERIC ) beeinflusst. Voreingestellt ist der Punkt. atof() erkennt auch Zeichenketten, die mit Ziffern beginnen, dann aber mit beliebigen Zeichen enden. atof() schneidet den Ziffernteil ab, wandelt ihn gemäß obiger Beschreibung um und ignoriert den Rest.
|
Siehe auch | atoi() , atol() , strtod() , strtol() , strtoul() , stdlib.h .
|