golang 浮点型
前言
- 不做文字的搬运工,多做灵感性记录
- 这是平时学习总结的地方,用做知识库
- 平时看到其他文章的相关知识,也会增加到这里
- 随着学习深入,会进行知识拆分和汇总,所以文章会随时更新
- 参考的文章过多、很杂很乱,所以参考会写不全,见谅
浮点型
- 就是存放小数的
1.三要素
浮点数=符号位+指数位+尾数位
储存过程中,精度会丢失,直接打印也会丢失,所以要保存精度高的数,选用float64类型(尾部可能会丢失,造成精度损失)
浮点数是都有符号的
2.表现形式
- 十进制 :5.12
- 科学计数法 : 5.12e2 //用e或者E表示指数部分(10
3.类型
| 类型 | 系统 | 占用储存空间 | 表述范围 | ||
|---|---|---|---|---|---|
| float32 | 带符号 | 所有现代CPU支持 | 4字节(单精度) | ||
| float64 | 带符号 | 所有现代CPU支持 | 8字节(双精度) | 默认类型 |
- 两种类型算数规范由IEEE754浮点数国际标准定义,该规范被所有现代CPU支持
- 浮点类型有固定的范围和字段长度,不受具体os(操作系统)的影响。
- 取值范围可以在math包中查找
Float32 最大值math.Maxfloat32,大约3.4e38 最小值1.4e-45
Float64 最大值math.Mathfloat64.大约1.8e308 最小值4.9e-324
4.精度
| 类型 | 精度 | 备注 |
|---|---|---|
| float32 | 6个十进制的精度 | 累计计算误差容易扩散,且其能表示的正整数并不是很大 |
| float64 | 15个十进制的精度 | 优先使用 |
5.格式化
打印浮点数使用%m.nf来控制几位小数 //表示保留n位小数,点不能丢
6.使用细节
- 浮点型有自己的范围和字段长度,不受具体OS(操作系统影响)
跳转
golang 浮点型的更多相关文章
- Golang的基础数据类型-浮点型
Golang的基础数据类型-浮点型 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.浮点型概述 Go语言提供两种精度的浮点数,即float32和float64,其中float32 ...
- GOLANG 基本数据类型 浮点型
浮点型 主要为了表示小数 也可细分float32和float64两种 float64提供比float32更高的精度 取值范围 类型 最大值 最小非负数 float32 3.40282346638528 ...
- golang中浮点型底层存储原理和decimal使用方法
var price float32 = 39.29 float64和float32类似,只是用于表示各部分的位数不同而已,其中:sign=1位,exponent=11位,fraction=52位,也就 ...
- 【GoLang】golang 最佳实践汇总
最佳实践 1 包管理 1.1 使用包管理对Golang项目进行管理,如:godep/vendor等工具 1.2 main/init函数使用,init函数参考python 1.2.1 main-> ...
- GoLang之基础
GoLang之基础 Go是一种并发的.带垃圾回收的.快速编译的语言. 经典的"hello world"入门: package main import "fmt" ...
- golang语法学习(一):变量,常量以及数据类型
学习一门新的语言肯定是要从他的主要的语法開始,语法构成了整个程序设计的基础,从语法中我们也能够看到这门语言的一些特性.可是话说回来.语法这东西,不同的语言大同小异,所以这也对语法的记忆造成了一定的难度 ...
- Golang基于学习总结
1.不支持继承 重载 ,比方C++Java的接口,接口的改动会影响整个实现改接口的类行为的改动,Go 设计者觉得这一特点也许根本没用. 2.必不论什么函数定义必须花括号跟在函数声明后面而不能换行 如 ...
- GO开发[二]:golang语言基础
[TOC] 一.变量 1.声明变量 变量相当于是对一块数据存储空间的命名,程序可以通过定义一个变量来申请一块数据存储空间,之后可以通过引用变量名来使用这块存储空间. Go语言引入了关键字var,而类型 ...
- GoLang simple-project-demo-02
GoLang 有很多种数据类型:字符型,整型,浮点型,布尔型.下面是基础例子: package main import "fmt" func main() { fmt.Printl ...
随机推荐
- Python Ethical Hacking - NETWORK_SCANNER(1)
NETWORK_SCANNER Discover all devices on the network. Display their IP address. Display their MAC add ...
- 【译】GraalVM—下一代JVM介绍
原标题:GraalVM – an introduction to the next level JVM 随着Red Hat宣布Quarkus作为- 为GraalVM和HotSpot量身定制的下一代Ku ...
- P1776 宝物筛选
题目: 正文: 啊,多重背包真恶心... 一开始我是把多重背包改成了01背包,然鹅我当时是直接1个1个的往后摞的... 参见以下代码: for(int i=1;i<=n;++i){//平平无奇的 ...
- T133308 57级返校测试重测-T3-成绩单
大致题意: 给定n个学生的学号和分数, 求各个分数段的人数, 求把学号排序后的序列, 求满分的人数以及学号. 基本思路: 虽然看起来很繁琐(?),但就非常非常的简单,直接按题意做就好了. 然后有个坑, ...
- Jmeter性能测试使用指南
图床如果失效,可以关注二维码,公众号查阅. JMeter安装 1.下载地址: https://downloads.apache.org//jmeter/binaries/apache-jmeter-5 ...
- gitlab的还原
源服务器: ip: 192.168.0.199 系统:CentOS7.2 内核: 3.10.0-327 gitlab版本: gitlab-ce-8.0.5 新服务器: ip: 192.168.0.19 ...
- Pattern、Matcher的用法
Pattern和Matcher Pattern 一个Pattern是一个正则表达式经编译后的表现模式. Matcher 一个Matcher对象是一个状态机器,它依据Pattern对象做为匹配模式对字符 ...
- Redis之Redis的数据类型
1.Redis的数据类型 Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(无序集合)及ZSet(有序集合) 2.String(字符串) ...
- 可能会用的到的JQ插件
├─lib │ jquery jQuery类库(v1.9.1) │ bootstrapSwitch 开关控件 │ Hui-iconfont_v1.0 阿里图标字体库(H-ui定制) │ font-aw ...
- Python os.renames() 方法
概述 os.renames() 方法用于递归重命名目录或文件.类似rename().高佣联盟 www.cgewang.com 语法 renames()方法语法格式如下: os.renames(old, ...