前言

  • 不做文字的搬运工,多做灵感性记录
  • 这是平时学习总结的地方,用做知识库
  • 平时看到其他文章的相关知识,也会增加到这里
  • 随着学习深入,会进行知识拆分和汇总,所以文章会随时更新
  • 参考的文章过多、很杂很乱,所以参考会写不全,见谅

浮点型

  • 就是存放小数的

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.使用细节

  1. 浮点型有自己的范围和字段长度,不受具体OS(操作系统影响)

跳转

golang 浮点型的更多相关文章

  1. Golang的基础数据类型-浮点型

    Golang的基础数据类型-浮点型 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.浮点型概述 Go语言提供两种精度的浮点数,即float32和float64,其中float32 ...

  2. GOLANG 基本数据类型 浮点型

    浮点型 主要为了表示小数 也可细分float32和float64两种 float64提供比float32更高的精度 取值范围 类型 最大值 最小非负数 float32 3.40282346638528 ...

  3. golang中浮点型底层存储原理和decimal使用方法

    var price float32 = 39.29 float64和float32类似,只是用于表示各部分的位数不同而已,其中:sign=1位,exponent=11位,fraction=52位,也就 ...

  4. 【GoLang】golang 最佳实践汇总

    最佳实践 1 包管理 1.1 使用包管理对Golang项目进行管理,如:godep/vendor等工具 1.2 main/init函数使用,init函数参考python 1.2.1 main-> ...

  5. GoLang之基础

    GoLang之基础 Go是一种并发的.带垃圾回收的.快速编译的语言. 经典的"hello world"入门: package main import "fmt" ...

  6. golang语法学习(一):变量,常量以及数据类型

    学习一门新的语言肯定是要从他的主要的语法開始,语法构成了整个程序设计的基础,从语法中我们也能够看到这门语言的一些特性.可是话说回来.语法这东西,不同的语言大同小异,所以这也对语法的记忆造成了一定的难度 ...

  7. Golang基于学习总结

    1.不支持继承 重载 ,比方C++Java的接口,接口的改动会影响整个实现改接口的类行为的改动,Go 设计者觉得这一特点也许根本没用. 2.必不论什么函数定义必须花括号跟在函数声明后面而不能换行 如 ...

  8. GO开发[二]:golang语言基础

    [TOC] 一.变量 1.声明变量 变量相当于是对一块数据存储空间的命名,程序可以通过定义一个变量来申请一块数据存储空间,之后可以通过引用变量名来使用这块存储空间. Go语言引入了关键字var,而类型 ...

  9. GoLang simple-project-demo-02

    GoLang 有很多种数据类型:字符型,整型,浮点型,布尔型.下面是基础例子: package main import "fmt" func main() { fmt.Printl ...

随机推荐

  1. Ethical Hacking - NETWORK PENETRATION TESTING(14)

    MITM - ARP Poisoning Theory Man In The Middle Attacks - ARP Poisoning This is one of the most danger ...

  2. Python Ethical Hacking - BACKDOORS(2)

    Refactoring - Creating a Listener Class #!/usr/bin/env python import socket class Listener: def __in ...

  3. Python Ethical Hacking - VULNERABILITY SCANNER(3)

    Polish the Python code using sending requests in a session Class Scanner. #!/usr/bin/env python impo ...

  4. C++语法小记---智能指针

    智能指针 用于缓解内存泄露的问题 用于替代原生指针 军规:只能指向堆空间中的对象或变量 方法 在智能指针的析构函数中调用delete 重载"->"操作符,只能重载成成员函数, ...

  5. 带你理解Lock锁原理

    同样是锁,先说说synchronized和lock的区别: synchronized是java关键字,是用c++实现的:而lock是用java类,用java可以实现 synchronized可以锁住代 ...

  6. web自动化 -- 切换 iframe

    先看源码 switch_to_frame() frame() 具体用法

  7. Huffuman树--------找最值学会用sort和cmp

    问题描述 Huffman树在编码中有着广泛的应用.在这里,我们只关心Huffman树的构造过程. 给出一列数{pi}={p0, p1, …, pn-1},用这列数构造Huffman树的过程如下: 1. ...

  8. 前端学习(三):body标签(一)

    进击のpython ***** 前端学习--body标签 body中的相关标签,因为是主要展现在页面的内容区域 所以相对来说内容多,杂,要背记的部分很多 当学完这节的内容之后,你可以试着写一片精致的文 ...

  9. 二手99新iPhone8Plus有锁移动联通版

    原文是维基百科:http://www.bosimedia.com/wiki/IPhone_8#cite_note-1 iPhone8Plus详细介绍 iPhone 8与iPhone 8 Plus 是苹 ...

  10. 发送ajax请求时候注意的问题

    1.在发送ajax请求一般都是默认为异步,就是不去等待后台响应直接可以继续发送, 但这样会有时候遇到一些问题,无法获得后台的响应参数, 所以在你打开编辑弹出框完成数据编辑后无法刷新页面, 这时候可能存 ...