2012-04-28 11 views
6

जैसा कि हम जानते हैं, elisp विभिन्न अड्डों में संख्या का समर्थन करता है, उदा। #20r1j आधार -10 में 39 के बराबर है। मैं #20r1j को #20r1j के रूप में प्रदर्शित करना चाहता हूं। लेकिन (format "%d" #20r1j) मुझे 39 देता है। संख्या को अपने मूल आधार में कैसे रखा जाए?elisp के तहत विभिन्न अड्डों में संख्याओं को प्रदर्शित करने के लिए कैसे?

उत्तर

8

एक प्रारूप स्ट्रिंग के रूप में, आप काफी अड्डों में सीमित हैं आप प्रदर्शित कर सकते हैं:

% d का मतलब दशमलव में संख्या (% ओ अष्टाधारी,% x हेक्स) के रूप में प्रिंट।
% एक्स% x की तरह है, लेकिन ऊपरी मामले का उपयोग करता है।

आप calc पुस्तकालय आप के लिए यह प्रबंधन करने के लिए, फिर भी उपयोग कर सकते हैं:

(require 'calc-bin) 

(let ((calc-number-radix 20)) 
    (math-format-radix 39)) 
"1J" 

(let ((calc-number-radix 20)) 
    (math-format-radix #20r1j)) 
"1J" 

पढ़ने वाक्य रचना का उपयोग कर रहे, 2 से calc-number-radix रन की अनुमति प्राप्त मान के रूप में 36.

को