Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/haskell/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Haskell 使用cmdArgs提取Int时类型不匹配_Haskell - Fatal编程技术网

Haskell 使用cmdArgs提取Int时类型不匹配

Haskell 使用cmdArgs提取Int时类型不匹配,haskell,Haskell,我尝试使用CmdArgs从命令行参数中提取整数: /prg-字节=512 下面的代码未编译,编译器说无法将预期类型“Int”与实际类型“Strlen->Int”匹配。现在,我想我已经把字节看成是一个整数了?不是吗 {-# LANGUAGE DeriveDataTypeable #-} import System.Console.CmdArgs data Strlen = Strlen {byte :: Int} deriving (Data, Typeable) strlen = cmdAr

我尝试使用CmdArgs从命令行参数中提取整数: /prg-字节=512

下面的代码未编译,编译器说无法将预期类型“Int”与实际类型“Strlen->Int”匹配。现在,我想我已经把字节看成是一个整数了?不是吗

{-# LANGUAGE DeriveDataTypeable #-}
import System.Console.CmdArgs

data Strlen = Strlen {byte :: Int} deriving (Data, Typeable)

strlen = cmdArgsMode $ Strlen {byte = def} 

main = do
        n <- cmdArgsRun strlen 
        let datastring = take byte $ randomRs ('a','Z') (mkStdGen 3)
要从n中选择字节字段,需要说出字节n。所以

要从n中选择字节字段,需要说出字节n。所以


这是可行的,但并没有。有趣的是,我的部分是可行的,但后来我主要使用了criteria。然后,Criteria bench拿起命令行参数并感到困惑。我是否可以以某种方式清空cmdarg,使criteria看不到它们?@JFritsch:我相信你可以;问一个新问题,明确什么不起作用/什么是你需要的,你就会得到答案。它起作用,但不是。有趣的是,我的部分起作用,但后来我主要使用标准。然后,Criteria bench拿起命令行参数并感到困惑。我是否可以以某种方式清空cmdarg,使criteria看不到它们?@JFritsch:我相信你可以;问一个新问题,明确什么不起作用/你需要什么,你就会得到答案。
let datastring = take (byte n) $ randomRs ('a','Z') (mkStdGen 3)