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


     #include <stdlib.h>

     long a64l(const char *s);

     char *l64a(long l);


     These functions maintain numbers  stored  in  base-64  ASCII
     characters that 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 as follows:

    |          Character          |            Digit               |
    |              .              |              0                 |
    |              /              |              1                 |
    |             0-9             |             2-11               |
    |             A-Z             |            12-37               |
    |             a-z             |            38-63               |

     The a64l() function 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.

     The a64l() function 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.

     The l64a() function 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.

     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.


     See attributes(5) for descriptions of the  following  attri-

    |       ATTRIBUTE TYPE        |       ATTRIBUTE VALUE       |
    | MT-Level                    | MT-Safe                     |



Man(1) output converted with man2html