登录
首页 >  Golang >  Go问答

最小正 float64 值

来源:stackoverflow

时间:2024-02-22 17:47:05 337浏览 收藏

知识点掌握了,还需要不断练习才能熟练运用。下面golang学习网给大家带来一个Golang开发实战,手把手教大家学习《最小正 float64 值》,在实现功能的过程中也带大家重新温习相关知识点,温故而知新,回头看看说不定又有不一样的感悟!

问题内容

就像这个问题一样,我需要一个尽可能接近于零的正数,但在 Go 中它不是零。


解决方案


math 包有一个用于此值和类似值的常量,只需使用它:math.SmallestNonzeroFloat64

const (
    maxfloat32             = 3.40282346638528859811704183484516925440e+38  // 2**127 * (2**24 - 1) / 2**23
    smallestnonzerofloat32 = 1.401298464324817070923729583289916131280e-45 // 1 / 2**(127 - 1 + 23)

    maxfloat64             = 1.797693134862315708145274237317043567981e+308 // 2**1023 * (2**53 - 1) / 2**52
    smallestnonzerofloat64 = 4.940656458412465441765687928682213723651e-324 // 1 / 2**(1023 - 1 + 52)
)

打印它的值:

fmt.println(math.smallestnonzerofloat64)

输出(在 Go Playground 上尝试):

5e-324

(注意:由于 fmt 包中的舍入,它大于常量。)

终于介绍完啦!小伙伴们,这篇关于《最小正 float64 值》的介绍应该让你收获多多了吧!欢迎大家收藏或分享给更多需要学习的朋友吧~golang学习网公众号也会发布Golang相关知识,快来关注吧!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>