1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83
|
.\" Copyright 2002 walter harms (walter.harms@informatik.uni-oldenburg.de)
.\"
.\" %%%LICENSE_START(GPL_NOVERSION_ONELINE)
.\" Distributed under GPL
.\" %%%LICENSE_END
.\"
.\" Corrected, aeb, 2002-05-30
.\"
.\"*******************************************************************
.\"
.\" This file was generated with po4a. Translate the source file.
.\"
.\"*******************************************************************
.\"
.\" Japanese Version Copyright (c) 2002-2003 Yuichi SATO
.\" all rights reserved.
.\" Translated Tue Aug 6 04:34:20 JST 2002
.\" by Yuichi SATO <ysato@h4.dion.ne.jp>
.\" Updated & Modified Thu Nov 27 01:02:55 JST 2003
.\" by Yuichi SATO <ysato444@yahoo.co.jp>
.\"
.TH A64L 3 2014\-05\-28 "" "Linux Programmer's Manual"
.SH 名前
a64l, l64a \- long と base\-64 を変換する
.SH 書式
\fB#include <stdlib.h>\fP
.sp
\fBlong a64l(const char *\fP\fIstr64\fP\fB);\fP
.sp
\fBchar *l64a(long \fP\fIvalue\fP\fB);\fP
.sp
.in -4n
glibc 向けの機能検査マクロの要件 (\fBfeature_test_macros\fP(7) 参照):
.in
.sp
\fBa64l\fP(), \fBl64a\fP():
.br
.RS 4
.ad l
_SVID_SOURCE || _XOPEN_SOURCE\ >=\ 500 || _XOPEN_SOURCE\ &&\ _XOPEN_SOURCE_EXTENDED
.RE
.ad
.SH 説明
これらの関数は 32 ビット long 整数と リトルエンディアン base\-64 ASCII 文字列 (長さ 0 〜 6) の間の変換を行う。
\fBa64l\fP() の引き数の文字列が 7 文字以上の場合、 最初の 6 バイトが使われる。 \fIlong\fP 型が 32 ビットより大きい場合、
\fBl64a\fP() は \fIvalue\fP の下位 32 ビットのみを使い、 \fBa64l\fP() は 32 ビットの結果を符号拡張
(sign\-extend) する。
.LP
base\-64 システムで使われる 64 個の文字は以下の通りである:
.RS
.nf
\&\(aq.\(aq は 0 を表す。
\&\(aq/\(aq は 1 を表す。
0\-9 は 2\-11 を表す。
A\-Z は 12\-37 を表す。
a\-z は 38\-63 を表す。
.fi
.RE
よって 123 = 59*64^0 + 1*64^1 = "v/" である。
.SH 属性
.SS "マルチスレッディング (pthreads(7) 参照)"
\fBl64a\fP() 関数はスレッドセーフではない。
.LP
\fBa64l\fP() 関数はスレッドセーフである。
.SH 準拠
POSIX.1\-2001.
.SH 注意
\fBl64a\fP() で返される値は静的バッファーへのポインターかもしれないので、 以降の呼び出しで上書きされる可能性がある。
.LP
\fIvalue\fP が負の場合、 \fBl64a\fP() の動作は定義されていない。 \fIvalue\fP が 0 の場合は空文字列を返す。
.LP
これらの関数は glibc 2.2.5 以前では間違っている (最上位デジットを最初にしている)。
.LP
これは \fBuuencode\fP(1) で使われるエンコーディングではない。
.SH 関連項目
.\" .BR itoa (3),
\fBuuencode\fP(1), \fBstrtoul\fP(3)
.SH この文書について
この man ページは Linux \fIman\-pages\fP プロジェクトのリリース 3.79 の一部
である。プロジェクトの説明とバグ報告に関する情報は
http://www.kernel.org/doc/man\-pages/ に書かれている。
|