A64L(3)

BEZEICHNUNG
a64l, l64a - Umwandlung zwischen Long und Base-64

ÜBERSICHT
#include <stdlib.h>

long a64l(const char *str64);

char *l64a(long value);

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

a64l(), l64a():
    _XOPEN_SOURCE >= 500
        || /* Glibc seit 2.19: */ _DEFAULT_SOURCE
        || /* Glibc-Versionen <= 2.19: */ _SVID_SOURCE

BESCHREIBUNG
Diese Funktionen konvertieren zwischen 32-Bit-Ganzzahlen und Little-Endian-Base-64-ASCII-Zeichenketten (der Länge null bis sechs). Wenn die Länge des Zeichenketten-Arguments für a64l() größer als sechs ist, werden nur die ersten sechs Byte verwendet. Wenn der Typ long mehr als 32 Bit lang ist, dann bearbeitet l64a() nur die niederwertigen 32 Bits von value und a64l() erweitert sein 32-Bit-Ergebnis mit führenden Nullen.

Die 64 Ziffern des Base-64-Systems sind:

    '.'	steht für eine 0
    '/'	steht für eine 1
    0-9	stehen für  2-11
    A-Z	stehen für 12-37
    a-z	stehen für 38-63

Ein Beispiel: 123 = 59*64^0 + 1*64^1 = »/v«.

ATTRIBUTE
Siehe attributes(7) für eine Erläuterung der in diesem Abschnitt verwandten Ausdrücke.
Schnittstelle | Attribut | Wert
l64a() | Multithread-Fähigkeit | MT-Unsafe race:l64a
a64l() | Multithread-Fähigkeit | MT-Safe

KONFORM ZU
POSIX.1-2001, POSIX.1-2008.

ANMERKUNGEN
Der Rückgabewert von l64a() kann ein Zeiger auf einen statischen Puffer sein, dessen Inhalt vielleicht schon durch spätere Aufrufe überschrieben ist.

Das Verhalten von l64a() ist für negative Werte von value nicht definiert. Wenn value gleich Null ist, wird eine leere Zeichenkette zurückgeliefert.

Diese Funktionen sind in glibc-Versionen vor 2.2.5 fehlerhaft (setzen die höchstwertige Stelle zuerst).

Diese Kodierung wird nicht von uuencode(1) verwendet.

SIEHE AUCH
uuencode(1), 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>.