Haskell程式將int型別變數轉換為long
在Haskell中,我們可以使用內部函式,如fromIntegral、intToLong和toInteger函式以及toEnum來將int型別變數轉換為long。在第一個示例中,我們將使用(let longVar = fromIntegral intVar :: Int64),在第二個示例中,我們將使用(intToLong = toEnum)函式。
演算法
步驟1 − 匯入Data.Int模組。
步驟2 − 程式執行將從main函式開始。main()函式控制整個程式。
步驟3 − 初始化名為“intVar”的變數。它將儲存要轉換為相應long值的Int型別變數。
步驟4 − 使用內部函式並將intVar傳遞給它。
步驟5 − 呼叫函式後,使用‘putStrLn’語句將結果long值列印到控制檯。
示例1
在此示例中,使用fromIntegral函式定義函式,以將int型別變數轉換為long。
import Data.Int (Int64) main :: IO () main = do let intVar = 123456789 let longVar = fromIntegral intVar :: Int64 putStrLn $ "The integer value is " ++ show intVar ++ "." putStrLn $ "The corresponding long value is " ++ show longVar ++ "."
輸出
The integer value is 123456789. The corresponding long value is 123456789.
示例2
在此示例中,使用fromIntegral和intToLong函式定義函式,以將int型別變數轉換為long。
import Data.Int (Int64) intToLong :: Int -> Int64 intToLong = fromIntegral main :: IO () main = do let intVar = 123456789 let longVar = intToLong intVar putStrLn $ "The integer value is " ++ show intVar ++ "." putStrLn $ "The corresponding long value is " ++ show longVar ++ "."
輸出
The integer value is 123456789. The corresponding long value is 123456789.
示例3
在此示例中,使用fromIntegral和toInteger函式定義函式,以將int型別變數轉換為long。
import Data.Int (Int64) main :: IO () main = do let intVar = 123456789 let longVar = fromInteger $ toInteger intVar :: Int64 putStrLn $ "The integer value is " ++ show intVar ++ "." putStrLn $ "The corresponding long value is " ++ show longVar ++ "."
輸出
The integer value is 123456789. The corresponding long value is 123456789.
示例4
在此示例中,使用toEnum函式定義函式,以將int型別變數轉換為long。
import Data.Int (Int64) intToLong :: Int -> Int64 intToLong = toEnum main :: IO () main = do let intVar = 123456789 let longVar = intToLong intVar putStrLn $ "The integer value is " ++ show intVar ++ "." putStrLn $ "The corresponding long value is " ++ show longVar ++ "."
輸出
The integer value is 123456789. The corresponding long value is 123456789.
結論
在Haskell中,Int是一個固定大小的整數型別,其大小取決於平臺,而Data.Int.Int64是一個64位整數型別。將Int變數轉換為Data.Int.Int64變數涉及將變數轉換為可以容納更大值範圍的更大整數型別。在Haskell中,使用fromIntegral函式以及intToLong和toInteger函式,以及使用toEnum函式將Int型別變數轉換為long。
廣告