2011-03-08 24 views
17

में कनवर्ट करें मैं सोच रहा हूं कि मैं एक char को int में कैसे परिवर्तित कर सकता हूं। ईजी।चार को int

a = '\x2' -- a == 2 
      -- type of a should be Char 
b = charToInt a -- b == 2 
       -- type of b should be Int 

लेकिन मुझे पता नहीं कैसे आए:/

अग्रिम धन्यवाद

+9

डिस्कवर और [hoogle] (http://www.haskell.org/hoogle/?hoogle=Char+-%3E+Int) का उपयोग करें और उपयोग करें। –

उत्तर

21

में आप ord समारोह का उपयोग कर सकते है अपने पूर्णांक (क्रमसूचक) प्रतिनिधित्व करने के लिए एक चरित्र कन्वर्ट करने के लिए।

chr दूसरी दिशा चला जाता है।

> ord '\x2'­ 
    => 2 
> chr 97 
    => 'a' 
> ord (chr 42) 
    => 42 
+19

बस जोड़ने के लिए, आपको उन – newacct

4

आप एनम या डेटा.आहर.ऑर्ड से उपयोग कर सकते हैं।

+0

(से 'एनम' एक्स ') (=Enum' 0 ') == x – jpredham

+1

@jpredham का उपयोग करने के लिए' char 'या 'import Data.har' आयात करना होगा। हमारे पास' digitToInt' 9 है उस सटीक puprose के लिए 'Data.Char' से '' – gvlasov

संबंधित मुद्दे