我在haskell中有以下代码,我想对其进行一些更改:
unwords . map (printf "%02X") $ zipWith (\x y -> -(fromIntegral (ord x)) + y - 2 :: Word8) "Aa123456" [0..]
运行此代码后,我得到:
"BD 9E CF CF CF CF CF CF"
基本上我想要这个函数的逆,所以函数可以获得十六进制值"BD 9E CF CF CF CF CF CF"
并返回"Aa123456"
。
我确定我必须更改printf
语句,但我应该如何更改脚本以接受十六进制值?