NAME
a64l(), l64a() — convert between long integer and base-64 ASCII string
SYNOPSIS
#include <stdlib.h>
long int a64l(const char *s);
char *l64a(long int l);
Obsolescent Interface
int l64a_r(long int l, char *buffer, int buflen);
DESCRIPTION
These functions are used to maintain numbers stored in
base-64
ASCII
characters.
This is 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.
The leftmost character is the least
significant digit. For example,
a0 = (38 x 640) + (2 x 641) = 166
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()
uses the first six.
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.
Obsolescent Interface
l64a_r()
converts between long integer and base-64 ASCII string.
WARNINGS
The value returned by
l64a()
is a pointer into a buffer,
the contents of which are overwritten subsequent calls
by the same thread.
l64a_r()
is an obsolescent interface supported only for compatibility with existing
DCE applications. New multithreaded applications should use
l64a().
STANDARDS CONFORMANCE
a64l(): SVID2, SVID3
l64a(): SVID2, SVID3