为了账号安全,请及时绑定邮箱和手机立即绑定

关于float的字节和储存的问题

关于float的字节和储存的问题

C
慕仙2339606 2017-09-23 18:28:39
数字按ASCII储存就是用八位储存一个数字,可是一个浮点型六位有效数字又只有四个字节,为什么呢?
查看完整描述

1 回答

已采纳
?
onemoo

TA贡献883条经验 获得超454个赞

字符型占 8 位,那么数字按照字符来保存当然就是 8 位一个数。

但是浮点数并不是按照字符来保存的啊!

浮点值是按照相应的浮点类型格式来保存的,一般来说这个格式遵循 IEEE-754 标准,也就是 float 采用占用 32 的格式,而 double 占用 64 位。  所以这与字符编码没有关系,浮点数就是能够用 32 位(4字节)或 64 位(8字节)来表示。

毕竟无法保存的下无限长的浮点数,所以 float 的精度只有大约 7 位有效数字,double 精度大约是 15 位有效数字。


至于 IEEE-754 的具体编码方式你可以去查询下详细描述。简单的说 IEEE-754 标准是把符号位、有效数字位和指数位分别编码到 32 位(float)或 64 位(double)的不同位置上。不过这些你并不用详细了解。

查看完整回答
3 反对 回复 2017-09-23
  • 1 回答
  • 1 关注
  • 1308 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信