分享
GOLANG 基本数据类型 浮点型
zengyz · · 17672 次点击 · · 开始浏览这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。
浮点型
主要为了表示小数
也可细分float32和float64两种
float64提供比float32更高的精度
取值范围
类型
最大值
最小非负数
float32
3.402823466385288598117041834516925440e
+38 1.401298464324817070923729583289916131280e
-45
+38 1.401298464324817070923729583289916131280e
-45
float64
1.797693134862315708145274237317043567981e
+308 4.940656458412465441765687928682213723651e
-324
+308 4.940656458412465441765687928682213723651e
-324
运算结果不正确解决方式
原代码package maininport "fmt"func main(){var a,b,c float64a=1.69b=1.7c=a*b//正确结果2.873fmt.Println(c)}
改造后代码
package maininport "fmt"func main(){var a,b,c float64a=1.69*100b=1.7*10c=a*b/(100*10)//正确结果2.873fmt.Println(c)}
尽量使用64位
浮点型
主要为了表示小数
也可细分float32和float64两种
float64提供比float32更高的精度
取值范围
类型
最大值
最小非负数
float32
3.402823466385288598117041834516925440e
+38 1.401298464324817070923729583289916131280e
-45
+38 1.401298464324817070923729583289916131280e
-45
float64
1.797693134862315708145274237317043567981e
+308 4.940656458412465441765687928682213723651e
-324
+308 4.940656458412465441765687928682213723651e
-324
运算结果不正确解决方式
原代码package maininport "fmt"func main(){var a,b,c float64a=1.69b=1.7c=a*b//正确结果2.873fmt.Println(c)}
改造后代码
package maininport "fmt"func main(){var a,b,c float64a=1.69*100b=1.7*10c=a*b/(100*10)//正确结果2.873fmt.Println(c)}
尽量使用64位
有疑问加站长微信联系(非本文作者)
入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889
关注微信17672 次点击
下一篇:GOLANG 赋值
添加一条新回复
(您需要 后才能回复 没有账号 ?)
- 请尽量让自己的回复能够对别人有帮助
- 支持 Markdown 格式, **粗体**、~~删除线~~、
`单行代码` - 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
- 图片支持拖拽、截图粘贴等方式上传
收入到我管理的专栏 新建专栏
浮点型
主要为了表示小数
也可细分float32和float64两种
float64提供比float32更高的精度
取值范围
类型
最大值
最小非负数
float32
3.402823466385288598117041834516925440e
+38 1.401298464324817070923729583289916131280e
-45
+38 1.401298464324817070923729583289916131280e
-45
float64
1.797693134862315708145274237317043567981e
+308 4.940656458412465441765687928682213723651e
-324
+308 4.940656458412465441765687928682213723651e
-324
运算结果不正确解决方式
原代码package maininport "fmt"func main(){var a,b,c float64a=1.69b=1.7c=a*b//正确结果2.873fmt.Println(c)}
改造后代码
package maininport "fmt"func main(){var a,b,c float64a=1.69*100b=1.7*10c=a*b/(100*10)//正确结果2.873fmt.Println(c)}
尽量使用64位
浮点型
主要为了表示小数
也可细分float32和float64两种
float64提供比float32更高的精度
取值范围
类型
最大值
最小非负数
float32
3.402823466385288598117041834516925440e
+38 1.401298464324817070923729583289916131280e
-45
+38 1.401298464324817070923729583289916131280e
-45
float64
1.797693134862315708145274237317043567981e
+308 4.940656458412465441765687928682213723651e
-324
+308 4.940656458412465441765687928682213723651e
-324
运算结果不正确解决方式
原代码package maininport "fmt"func main(){var a,b,c float64a=1.69b=1.7c=a*b//正确结果2.873fmt.Println(c)}
改造后代码
package maininport "fmt"func main(){var a,b,c float64a=1.69*100b=1.7*10c=a*b/(100*10)//正确结果2.873fmt.Println(c)}
尽量使用64位