A64L - Linux手册页

时间:2019-08-20 17:59:50  来源:igfitidea点击:

Linux程序员手册 第3部分
更新日期: 2020-08-13

名称

a64l,l64a-在long和base-64之间转换

语法

#包括

长a64l(const char * str64);

char * l64a(long value);

glibc的功能测试宏要求(请参阅feature_test_macros(7)):

a64l(),l64a():

_XOPEN_SOURCE>= 500 || / * Glibc自2.19起:* / -_DEFAULT_SOURCE || / * Glibc版本

说明

这些函数可在32位长整数和小尾数base-64 ASCII字符串(长度为0到6)之间进行转换。如果用作a64l()的参数的字符串的长度大于6,则仅使用前六个字节。如果long类型的长度超过32位,则l64a()仅使用值的低阶32位,而a64l()将其32位结果符号扩展。

base-64系统中的64位数字是:

aq.aq   represents a 0
aq/aq   represents a 1
0-9     represent  2-11
A-Z     represent 12-37
a-z     represent 38-63

因此123 = 59 * 64ha0 + 1 * 64ha1 =" v /"。

属性

有关本节中使用的术语的说明,请参见attribute(7)。

InterfaceAttributeValue
l64a()Thread safetyMT-Unsafe race:l64a
a64l()Thread safetyMT-Safe

遵循规范

POSIX.1-2001,POSIX.1-2008。

备注

l64a()返回的值可能是指向静态缓冲区的指针,可能被以后的调用覆盖。

当value为负时,l64a()的行为是不确定的。如果value为零,则返回一个空字符串。

这些功能在2.2.5之前的glibc中已被破坏(先输入最高有效数字)。

这不是uuencode(1)使用的编码。

另外参见

uuencode(1),strtoul(3)

出版信息

这个页面是Linux手册页项目5.08版的一部分。有关项目的说明、有关报告错误的信息以及此页面的最新版本,请访问https://www.kernel.org/doc/man-pages/