a64l

Autres langues

Langue: ja

Version: 2002-02-15 (openSuse - 09/10/07)

Section: 3 (Bibliothèques de fonctions)

̾Á°

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/" ¤Ç¤¢¤ë¡£

½àµò

POSIX.1-2001.

Ãí°Õ

a64l() ¤ÇÊÖ¤µ¤ì¤ëÃͤÏÀÅŪ¥Ð¥Ã¥Õ¥¡¤Ø¤Î¥Ý¥¤¥ó¥¿¤«¤â¤·¤ì¤Ê¤¤¤Î¤Ç¡¢ °Ê¹ß¤Î¸Æ¤Ó½Ð¤·¤Ç¾å½ñ¤­¤µ¤ì¤ë²ÄǽÀ­¤¬¤¢¤ë¡£

value ¤¬Éé¤Î¾ì¹ç¡¢ l64a() ¤ÎÆ°ºî¤ÏÄêµÁ¤µ¤ì¤Æ¤¤¤Ê¤¤¡£ value ¤¬ 0 ¤Î¾ì¹ç¤Ï¶õʸ»úÎó¤òÊÖ¤¹¡£

¤³¤ì¤é¤Î´Ø¿ô¤Ï glibc 2.2.5 °ÊÁ°¤Ç¤Ï´Ö°ã¤Ã¤Æ¤¤¤ë (ºÇ¾å°Ì¥Ç¥¸¥Ã¥È¤òºÇ½é¤Ë¤·¤Æ¤¤¤ë)¡£

¤³¤ì¤Ï uuencode(1) ¤Ç»È¤ï¤ì¤ë¥¨¥ó¥³¡¼¥Ç¥£¥ó¥°¤Ç¤Ï¤Ê¤¤¡£

´ØÏ¢¹àÌÜ

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