double型小数点后几位 您所在的位置:网站首页 double是小数点后几位 double型小数点后几位

double型小数点后几位

#double型小数点后几位| 来源: 网络整理| 查看: 265

浮点型数据是用来表示具有小数点的实数的。为什么在C中把实数称为浮点数呢?在C语言中,实数是以指数形式存放在存储单元中的。一个实数表示为指数可以有不止一种形式,如3.14159可以表示为:3.14159×10e0,0.314159×10e1,0.0314159×10e2,31.4159×10e-1,314.159×10e-2等,它们代表同一个值。可以看出:小数点的位置是可以在314159几个数字之间和之前或之后(加0)浮动的,只要在小数点位置浮动的同时改变指数的值,就可以保证它的值不会改变。由于小数点位置可以浮动,所以实数的指数形式称为浮点数。

在指数形式的多种表示方式中把小数部分中小数点前的数字为0、小数点后第1位数字不为0的表示形式称为规范化的指数形式,如0.314159×10e1就是3.14159的规范化的指数形式。一个实数只有一个规范化的指数形式,在程序以指数形式输出一个实数时,必然以规范化的指数形式输出,如0.314159e001.

浮点数类型包括float(单精度浮点型)、double(双精度浮点型)、long double(长双精度浮点型)。

(1)float型(单精度浮点型)。编译系统为每一个float型变量分配4个字节,数值以规范化的二进制数指数形式放在存储单元中。在存储时,系统将实型数据分成小数部分和指数部分两个部分,分别存放。小数部分的小数点前面的数为0.如3.14159在内存中的存放形式可以用图1表示。

44e08cc221c50a6cb8f51aec1232ddfc.png

图1 小数在内存中的存放

图1是用十进制数来示意的,实际上在计算机中是用二进制数来表示小数部分以及用2的幂次来表示指数部分的。在4个字节(32位)中,究竟用多少位来表示小数部分,多少位来表示指数部分,C标准并无具体规定,由各C语言编译系统自定。有的C语言编译系统以24位表示小数部分(包括符号),以8位表示指数部分(包括指数的符号)。由于用二进制形式表示一个实数以及存储单元的长度是有限的,因此不可能得到完全精确的值,只能存储成有限的精确度。小数部分占的位(bit)数愈多,数的有效数字愈多,精度也就愈高。指数部分占的位数愈多,则能表示的数值范围愈大。float型数据能得到6位有效数字,数值范围为-3.4×10-38~3.4×10e38.

(2)double型(双精度浮点型)。为了扩大能表示的数值范围,用8个字节存储一个double型数据,可以得到15位有效数字,数值范围-1.7×10e-308~1.7×10e308.在C语言中进行浮点数的算术运算时,将float型数据都自动转换为double型,然后进行运算。

(3)long long型(长双精度)型,不同的编译系统对long double型的处理方法不同,Turbo C对long double型分配16个字节。而Visual C++ 6.0则对long double型和double型一样处理,分配8个字节。

cf0763abdf68be339534dc81540fae78.png

实型数据有关情况

搜索微信公众号【balayihuier】或扫描下方二维码关注微信公众号,资深软件工程师带你手把手撸代码,从此走上人生巅峰,迎娶白富美! 4aa48dd7e0881beb6bdd105cffaa98d6.png

公众号《吧啦一会儿》,手把手带你撸代码



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有