整数を2進数や16進数で表す方法は?
リファレンスマニュアルをひいたらちゃんと書いてありました。
The syntax for integers in bases other than 10 uses ‘#’ followed by a letter that specifies the radix: ‘b’ for binary, ‘o’ for octal, ‘x’ for hex, or ‘radixr’ to specify radix radix. Case is not significant for the letter that specifies the radix. Thus, ‘#binteger’ reads integer in binary, and ‘#radixrinteger’ reads integer in radix radix. Allowed values of radix run from 2 to 36. For example:
#b101100 ⇒ 44
#o54 ⇒ 44
#x2c ⇒ 44
#24r1k ⇒ 44
#{radix}r
という表現で2から36までの任意の基数を指定できる、という機能は初めて知った。面白い。
ちなみに上の例は Emacs Lisp だけでなくて Common Lisp でも機能した(SBCL-1.0.55 だけど)。しかし、リファレンスからその説明をみつけだすことができなかった。
0 件のコメント:
コメントを投稿