Scroll to navigation

ATOI(3) Linux-Programmierhandbuch ATOI(3)

BEZEICHNUNG

atoi, atol, atoll, - konvertiert eine Zeichenkette in eine Ganzzahl

ÜBERSICHT

#include <stdlib.h>
int atoi(const char *nptr);
long atol(const char *nptr);
long long atoll(const char *nptr);

Mit Glibc erforderliche Makros (siehe feature_test_macros(7)):

atoll():

_ISOC99_SOURCE ||
|| /* Glibc-Versionen <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE

BESCHREIBUNG

Die Funktion atoi() konvertiert eine Zeichenkette in eine Ganzzahl. Dabei ist nptr ein Zeiger auf die Zeichenkette, die konvertiert werden soll. Die übergebene Zeichenkette wird dabei nach den ersten passenden Zeichen durchsucht und diese werden konvertiert. Die Funktion verhält sich genauso wie


strtol(nptr, NULL, 10);

mit dem Unterschied, dass atoi() keine Fehler erkennt.

Die Funktionen atol() und atoll() verhalten sich wie atoi(). Der Unterschied ist, dass sie den Anfang der Zeichenkette in ihren Rückgabewert (also long oder long long) konvertieren.

RÜCKGABEWERT

Der umgewandelte Wert oder 0 bei einem Fehler.

ATTRIBUTE

Siehe attributes(7) für eine Erläuterung der in diesem Abschnitt verwandten Ausdrücke.

Schnittstelle Attribut Wert
atoi(), atol(), atoll() Multithread-Fähigkeit MT-Safe locale

KONFORM ZU

POSIX.1-2001, POSIX.1-2008, C99, SVr4, 4.3BSD. C89 und POSIX.1-1996 enthalten nur die Funktionen atoi() und atol().

ANMERKUNGEN

POSIX.1 gibt keinen Rückgabewert von atoi() bei Fehlern an. Unter glibc, musl libc und uClibc wird bei Fehlern 0 zurückgegeben.

FEHLER

Bei Fehlern wird errno nicht gesetzt, daher gibt es keine Möglichkeit, zwischen 0 als Fehler oder als umgewandelter Wert zu unterscheiden. Es werden keine Überprüfungen auf Über- oder Unterlauf ausgeführt. Nur Base-10-Eingaben können umgewandelt werden. Es wird empfohlen, in neuen Programmen die Funktionsfamilie strtol() und strtoul() zu verwenden.

SIEHE AUCH

atof(3), strtod(3), strtol(3), strtoul(3)

KOLOPHON

Diese Seite ist Teil der Veröffentlichung 5.10 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 Markus Schmitt <fw@math.uni-sb.de>, Michael Piefel <piefel@debian.org>, 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.

13. August 2020 GNU