Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/haskell/8.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 哈斯克尔的奇怪秒表结果_Haskell_Stopwatch - Fatal编程技术网

Haskell 哈斯克尔的奇怪秒表结果

Haskell 哈斯克尔的奇怪秒表结果,haskell,stopwatch,Haskell,Stopwatch,该软件包包含一个返回TimeSpec记录的秒表函数。它有一个具有两个字段的构造函数:秒(sec)和纳秒(nsec)。但是,运行此命令会产生一个奇怪的结果: TimeSpec {sec = 29, nsec = 656841598} 它看起来不像nsec实际上是指纳秒,因为1秒应该是10^9纳秒。这是库中的错误还是发生了其他事情 秒和nsec字段不显示以不同单位表示的相同内容,而是显示整个时间的一部分。也就是说,{sec=1,nsec=2}表示“1秒和2纳秒” 试试这个: print $ fro

该软件包包含一个返回TimeSpec记录的秒表函数。它有一个具有两个字段的构造函数:秒(sec)和纳秒(nsec)。但是,运行此命令会产生一个奇怪的结果:

TimeSpec {sec = 29, nsec = 656841598}

它看起来不像nsec实际上是指纳秒,因为1秒应该是10^9纳秒。这是库中的错误还是发生了其他事情

秒和nsec字段不显示以不同单位表示的相同内容,而是显示整个时间的一部分。也就是说,
{sec=1,nsec=2}
表示“1秒和2纳秒”

试试这个:

print $ fromNanoSecs 1234567890000

> TimeSpec {sec = 1234, nsec = 567890000}

sec
nsec
字段不显示以不同单位表示的相同内容,而是显示整个时间的一部分。也就是说,
{sec=1,nsec=2}
表示“1秒和2纳秒”

试试这个:

print $ fromNanoSecs 1234567890000

> TimeSpec {sec = 1234, nsec = 567890000}

TimeSpec
分为两部分,第二个计数器和第二个分数的纳秒计数器。如果要以纳秒为单位计算总时间,请使用。

TimeSpec
分为两部分,一个是第二个计数器,另一个是纳秒计数器,用于第二个分数。如果您想要以纳秒为单位的总时间,请使用。

在我看来是一个分数。29秒+656841598纳秒。您是否声称nsec部分大于1e9?嗯
656841598/1e9=0.656841598
在我看来就像一个分数。29秒+656841598纳秒。您是否声称nsec部分大于1e9?嗯<代码>656841598/1e9=0.656841598