.\" -*- coding: UTF-8 -*- .\" Copyright (c) 1990, 1991 The Regents of the University of California. .\" All rights reserved. .\" .\" This code is derived from software contributed to Berkeley by .\" the American National Standards Committee X3, on Information .\" Processing Systems. .\" .\" %%%LICENSE_START(BSD_4_CLAUSE_UCB) .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" 3. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE .\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" %%%LICENSE_END .\" .\" @(#)strtod.3 5.3 (Berkeley) 6/29/91 .\" .\" Modified Sun Aug 21 17:16:22 1994 by Rik Faith (faith@cs.unc.edu) .\" Modified Sat May 04 19:34:31 MET DST 1996 by Michael Haardt .\" (michael@cantor.informatik.rwth-aachen.de) .\" Added strof, strtold, aeb, 2001-06-07 .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH STRTOD 3 "1. November 2020" Linux Linux\-Programmierhandbuch .SH BEZEICHNUNG strtod \- konvertiert eine ASCII\-Zeichenkette in eine Fließkommazahl .SH ÜBERSICHT \fB#include \fP .PP \fBdouble strtod(const char *\fP\fInptr\fP\fB, char **\fP\fIendptr\fP\fB);\fP .br \fBfloat strtof(const char *\fP\fInptr\fP\fB, char **\fP\fIendptr\fP\fB);\fP .br \fBlong double strtold(const char *\fP\fInptr\fP\fB, char **\fP\fIendptr\fP\fB);\fP .PP .RS -4 Mit Glibc erforderliche Makros (siehe \fBfeature_test_macros\fP(7)): .RE .ad l .PP \fBstrtof\fP(), \fBstrtold\fP(): .RS 4 _ISOC99_SOURCE || _POSIX_C_SOURCE\ >=\ 200112L .RE .ad .SH BESCHREIBUNG Die Funktionen \fBstrtod\fP(), \fBstrtof\fP(), and \fBstrtold\fP() wandeln den ersten Teil der Zeichenkette, auf die \fInptr\fP zeigt, in die entsprechende \fIdouble\fP\-, \fIfloat\fP\- und \fIlong double\fP\-Darstellung um. .PP Es wird die folgende Form (des Anfangs) der Zeichenkette erwartet : optionale Leerzeichen, wie sie von\fBisspace\fP(3) erkannt werden, ein optionales Plus\- \(aq+\(aq) oder Minus\-Zeichen (\(aq\-\(aq) und dann entweder (i) eine Dezimalzahl oder (ii) eine Hexadezimalzahl oder (iii) ein unendlicher Wert oder (iv) keine Zahl (ein NAN, not\-a\-number). .PP Eine \fIDezimalzahl\fP besteht aus einer nicht leeren Folge von Dezimalziffern, die möglicherweise ein Radix\-Zeichen enthält (Dezimalpunkt, von der Locale abhängig, meistens \(aq.\(aq), optional gefolgt von einem dezimalen Exponenten. Ein dezimaler Exponent besteht aus einem \(aqE\(aq oder \(aqe\(aq, gefolgt von einer nicht leeren Folge von Dezimalziffern. Er bedeutet eine Multiplikation mit einer Potenz von 10. .PP Eine \fIHexadezimalzahl\fP 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 \(aqP\(aq oderr \(aqp\(aq, 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. .PP Ein \fIunendlicher Wert\fP ist ungeachtet der Gross\- oder Kleinschreibung entweder »INF« oder »INFINITY«. .PP Ein \fINAN\fP ist (ungeachtet der Groß\- oder Kleinschreibung) ein »NAN«, optional gefolgt von einer Zeichenkette \fI(n\-char\-sequence)\fP. Die Zeichenfolge beschreibt auf implementationsabhängige Weise den Typ des NaNs (siehe ANMERKUNGEN). .SH RÜCKGABEWERT Diese Funktionen liefern den umgewandelten Wert zurück, wenn er existiert. .PP Wenn \fIendptr\fP nicht \fINULL\fP ist, wird an dem durch \fIendptr\fP bestimmten Ort ein Zeiger auf das erste Zeichen gespeichert, das nicht mehr zur Konvertierung herangezogen wurde. .PP Wenn keine Konvertierung stattgefunden hat, wird 0 zurückgeliefert und (falls \fIendptr\fP nicht Null ist) der Wert von \fInptr\fP wird am Ort gespeichert, auf den \fIendptr\fP weist. .PP Falls der korrekte Wert einen Überlauf verursacht, wird plus oder minus \fBHUGE_VAL\fP, \fBHUGE_VALF\fP oder \fBHUGE_VALL\fP zurückgegeben (abhängig vom Typ Vorzeichen des Wertes) und \fBERANGE\fP wird in \fIerrno\fP gespeichert. .PP Verursacht der korrekte Werte eine Bereichsunterschreitung, wird ein Wert zurückgegeben, der nicht größer als \fBDBL_MIN\fP, \fBFLT_MIN\fP oder \fBLDBL_MIN\fP ist und \fBERANGE\fP wird in \fIerrno\fP gespeichert. .SH FEHLER .TP \fBERANGE\fP Überlauf oder Bereichsunterschreitung aufgetreten .SH ATTRIBUTE Siehe \fBattributes\fP(7) für eine Erläuterung der in diesem Abschnitt verwandten Ausdrücke. .TS allbox; lbw29 lb lb l l l. Schnittstelle Attribut Wert T{ \fBstrtod\fP(), \fBstrtof\fP(), \fBstrtold\fP() T} Multithread\-Fähigkeit MT\-Safe locale .TE .SH "KONFORM ZU" POSIX.1\-2001, POSIX.1\-2008, C99. .PP \fBstrtod\fP() wurde auch in C89 beschrieben. .SH ANMERKUNGEN Da 0 ein legitimer Rückgabewert sowohl bei Erfolg als auch bei Misserfolg zurückgegeben werden kann, sollte das aufrufende Programm \fIerrno\fP vor dem Aufruf auf 0 setzen und nach dem Aufruf prüfen, ob \fIerrno\fP einen Wert ungleich Null hat. .PP .\" From glibc 2.8's stdlib/strtod_l.c: .\" We expect it to be a number which is put in the .\" mantissa of the number. .\" It looks as though at least FreeBSD (according to the manual) does .\" something similar. .\" C11 says: "An implementation may use the n-char sequence to determine .\" extra information to be represented in the NaN's significant." In der Glibc\-Implementierung wird die \fIn\-char\-sequence\fP, 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. .SH BEISPIELE Siehe das Beispiel in der Handbuchseite \fBstrtol\fP(3); die Verwendung der in dieser Handbuchseite beschriebenen Funktionen ist ähnlich. .SH "SIEHE AUCH" \fBatof\fP(3), \fBatoi\fP(3), \fBatol\fP(3), \fBnan\fP(3), \fBnanf\fP(3), \fBnanl\fP(3), \fBstrfromd\fP(3), \fBstrtol\fP(3), \fBstrtoul\fP(3) .SH KOLOPHON Diese Seite ist Teil der Veröffentlichung 5.10 des Projekts Linux\-\fIman\-pages\fP. 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/. .SH ÜBERSETZUNG Die deutsche Übersetzung dieser Handbuchseite wurde von Martin Eberhard Schauer und Mario Blättermann erstellt. Diese Übersetzung ist Freie Dokumentation; lesen Sie die .UR https://www.gnu.org/licenses/gpl-3.0.html GNU General Public License Version 3 .UE 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 .MT debian-l10n-german@\:lists.\:debian.\:org Mailingliste der Übersetzer .ME .