HOME > Linux Tips ( 目次 ) > Linux コマンド 一覧表 > a > a64l - ライブラリコールの説明

a64l - ライブラリコールの説明 - Linux コマンド集 一覧表

  1. 名前
  2. 書式
  3. 説明
  4. 注意
  5. 準拠
  6. 関連項目

名前

a64l, l64a - long と base-64 を変換する

書式

#include <stdlib.h>
long a64l(char * str64 );
char *l64a(long value );

説明

これらの関数は 32 ビット long 整数と リトルエンディアン base-64 ASCII 文字列 (長さ 0 〜 6) の間の変換を行う。 a64l ()の引き数の文字列が 7 文字以上の場合、 最初の 6 バイトが使われる。 long 整数が 32 ビットより大きい場合、 l64a ()は value の下位 32 ビットのみを使い、 a64l ()は 32 ビットの結果を符号拡張 (sign-extend) する。

base 64 システムで使われる 64 個の文字は以下の通りである:

'.'	は 0 を表す。
'/'	は 1 を表す。
0-9	は 2-11 を表す。
A-Z	は 12-37 を表す。
a-z	は 38-63 を表す。


よって 123 = 59*64^0 + 1*64^1 = "v/" である。

注意

a64l ()で返される値は静的バッファへのポインタかもしれないので、 以降の呼び出しで上書きされる可能性がある。

value が負の場合、 l64a ()の動作は定義されていない。 value が 0 の場合は空文字列を返す。

これらの関数は glibc 2.2.5 以前では間違っている (最上位デジットを最初にしている)。

これは   uuencode (1) で使われるエンコーディングではない。

準拠

POSIX.1-2001.

関連項目

  uuencode (1),  itoa (3),  strtoul (3) 

Linux Tips 関連記事
Linux Tips(目次)
Linux ディストリビューション一覧
rpm のファイル名にあるi386とかi686とは
自分のマシンの情報を調べる
cron の設定
ssh の root ログインを禁止する
ssh を、ユーザ、IPでアクセス制限
鍵交換方式によるssh接続
鍵交換方式によるssh接続( windowsから )
複数ファイル内の文字列を置換して上書き保存する
あるグループをイニシャルグループとするユーザー一覧出力
複数ファイルのファイル名を一括変換する
連番ファイルをコマンド一発で作成する
中身がランダムなファイルを任意のサイズで作成する
Linux ユーザーアカウントをロック・アンロックする