OSDN Git Service

(split) LDP: Release pages for LDP v3.39.
[linuxjm/LDP_man-pages.git] / release / man3 / a64l.3
1 .\" Copyright 2002 walter harms (walter.harms@informatik.uni-oldenburg.de)
2 .\" Distributed under GPL
3 .\"
4 .\" Corrected, aeb, 2002-05-30
5 .\"
6 .\"*******************************************************************
7 .\"
8 .\" This file was generated with po4a. Translate the source file.
9 .\"
10 .\"*******************************************************************
11 .TH A64L 3 2010\-09\-20 "" "Linux Programmer's Manual"
12 .SH 名前
13 a64l, l64a \- long と base\-64 を変換する
14 .SH 書式
15 \fB#include <stdlib.h>\fP
16 .sp
17 \fBlong a64l(char *\fP\fIstr64\fP\fB);\fP
18 .sp
19 \fBchar *l64a(long \fP\fIvalue\fP\fB);\fP
20 .sp
21 .in -4n
22 glibc 向けの機能検査マクロの要件 (\fBfeature_test_macros\fP(7)  参照):
23 .in
24 .sp
25 \fBa64l\fP(), \fBl64a\fP():
26 .br
27 .RS 4
28 .ad l
29 _SVID_SOURCE || _XOPEN_SOURCE\ >=\ 500 || _XOPEN_SOURCE\ &&\ _XOPEN_SOURCE_EXTENDED
30 .RE
31 .ad
32 .SH 説明
33 これらの関数は 32 ビット long 整数と リトルエンディアン base\-64 ASCII 文字列 (長さ 0 〜 6) の間の変換を行う。
34 \fBa64l\fP()  の引き数の文字列が 7 文字以上の場合、 最初の 6 バイトが使われる。 \fIlong\fP 型が 32 ビットより大きい場合、
35 \fBl64a\fP()  は \fIvalue\fP の下位 32 ビットのみを使い、 \fBa64l\fP()  は 32 ビットの結果を符号拡張
36 (sign\-extend) する。
37 .LP
38 base\-64 システムで使われる 64 個の文字は以下の通りである:
39 .RS
40 .nf
41
42 \&\(aq.\(aq     は 0 を表す。
43 \&\(aq/\(aq     は 1 を表す。
44 0\-9    は 2\-11 を表す。
45 A\-Z    は 12\-37 を表す。
46 a\-z    は 38\-63 を表す。
47
48 .fi
49 .RE
50 よって 123 = 59*64^0 + 1*64^1 = "v/" である。
51 .SH 準拠
52 POSIX.1\-2001.
53 .SH 注意
54 \fBl64a\fP()  で返される値は静的バッファへのポインタかもしれないので、 以降の呼び出しで上書きされる可能性がある。
55 .LP
56 \fIvalue\fP が負の場合、 \fBl64a\fP()  の動作は定義されていない。 \fIvalue\fP が 0 の場合は空文字列を返す。
57 .LP
58 これらの関数は glibc 2.2.5 以前では間違っている (最上位デジットを最初にしている)。
59 .LP
60 これは \fBuuencode\fP(1)  で使われるエンコーディングではない。
61 .SH 関連項目
62 .\" .BR itoa (3),
63 \fBuuencode\fP(1), \fBstrtoul\fP(3)