.\" 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 .\" Updated & Modified Thu Nov 27 01:02:55 JST 2003 .\" by Yuichi SATO .\" .TH A64L 3 2014\-05\-28 "" "Linux Programmer's Manual" .SH 名前 a64l, l64a \- long と base\-64 を変換する .SH 書式 \fB#include \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/ に書かれている。