C语言之实型数据类型

实型数据类型指的就是浮点数或实数

1、实型数据类型的分类


类型说明符

比特数(字节数)

有效数字

数的范围

float

32(4)

      6~7

-10的38次方~10的38次方      

double

64(8)

    15~16

     -10的308次方~10的308次方

由以上内容可以看出:

(1)实型数据没有办法精确的表示所有数字,因此表示的范围大

(2)相邻两个数据的距离是不等距的

(3)每一种实型数据都有自己的有效位数和精度

2、实型数据的表示

1) 十进制数形式
由数码0~ 9和小数点组成。 例如:0.0、25.0、5.789、0.13、5.0、300.、-267.8230 等均为合法的实数。
注意,必须有小数点。
2) 指数形式
由十进制数,加阶码标志“e”或“E”以及阶码(只能为整数,可以带符号)组成。其一般形式为:
    a E n(a为十进制数,n为十进制整数)
其值为 a*10n。如:2.1E5 (等于2.1*105) 3.7E-2 (等于3.7*10-2) 0.5E7 (等于0.5*107) -2.8E-2 (等于-2.8*10-2)
以下不是合法的实数:
345 (无小数点)
E7 (阶码标志E之前无数字)
-5 (无阶码标志)
53.-E3 (负号位置不对)
2.7E  (无阶码)

3、C语言中float和double数据在内存中的表示

 

前面的符号位很容易判断为0或者是1,指数部分称之为阶码,这个阶码部分是由偏置值(127或1111111)和阶码真值相加得到的,阶码真值符合IEEE-75标准,这个标准规定了是这个数一定能写成1.--*2的多少次方的形式,尾数部分的存储是原码的存储。


  • 13
    点赞
  • 43
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值