man Pages(3): Library Routines
  Cerca solo questo libro
Scarica il manuale in formato PDF

NAME

a64l, l64a - convert between long integer and base-64 ASCII string

SYNOPSIS

#include <stdlib.h>
long a64l(const char * s);
char * l64a(longl);

MT-LEVEL

MT-Safe

DESCRIPTION

These functions are used to maintain numbers stored in base-64 ASCII characters. These characters define a notation by which long integers can be represented by up to six characters; each character represents a ``digit'' in a radix-64 notation.
The characters used to represent ``digits'' are . for 0, / for 1, 0 through 9 for 2 -11, A through Z for 12 -37, and a through z for 38 -63.
a64l( ) takes a pointer to a null-terminated base-64 representation and returns a corresponding long value. If the string pointed to by s contains more than six characters, a64l( ) will use the first six.
a64l( ) scans the character string from left to right with the least significant digit on the left, decoding each character as a 6-bit radix-64 number.
l64a( ) takes a long argument and returns a pointer to the corresponding base-64 representation. If the argument is 0, l64a( ) returns a pointer to a null string.

NOTES

The value returned by l64a( ) is a pointer into a static buffer, the contents of which are overwritten by each call. In the case of multithreaded applications, the return value is a pointer to thread specific data.