去数学包有无效的结果

Moe*_*Far 7 math go

我只是在我的电脑上运行此代码:

package main

import (
   "fmt"
   "math"
)

func main() {
   const ali = 4e20
   fmt.Println(math.Sin(ali))
}
Run Code Online (Sandbox Code Playgroud)

得到了这个结果:

1.3471173831553043e+258
Run Code Online (Sandbox Code Playgroud)

为什么罪的结果超过1?

Python和其他一些语言都有正确的结果

小智 2

看起来这只是实现的问题,如果输入超过 2**49 就会导致问题。在这里发现一个非常老的问题