C语言中的单精度和双精度浮点型的区别!3.14是哪种?3.14159呢?

如题所述

3.14是单精度,3.14159是双精度。

两者区别如下:

一、指代不同

1、单精度:是指计算机表达实数近似值的一种方式。

2、双精度:此数据类型与单精度数据类型(float)相似,但精确度比float高。


二、占用空间不同

1、单精度:范围在负数的时候是从 -3.402823E38 到 -1.401298E-45,而在正数的时候是从 1.401298E-45 到 3.402823E38 。

2、双精度:双精度型占8 个字节(64位)内存空间,其数值范围为-1.79769313486232E308 到1.79769313486232E308。

三、特点不同

1、单精度:数值比以上值小的时候,将会由于尾数的有效位数减少而逐步丧失精度(IEEE 754的规定),或者有的系统则直接采用0值来简化处理过程。

2、双精度:编译时所占的内存空间依不同的编译器而有所不同,是double float数据类型,C/C++中表示实型变量的一种变量类型。


参考资料来源:百度百科单精度

参考资料来源:百度百科-双精度浮点型

温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2018-03-03
3.14和3.14159都是double型常量,这是C/C++的默认规定。而3.14f和3.14159f或(float)3.14和(float)3.14159才是float型。double型和foat型的区别不在于写上了多少位小数,而在于它们表示的浮点数能精确到多少位,float型一般能精确到6~7位,double型能精确到15~16位,精确的位数是包括整数部分的。本回答被网友采纳
第2个回答  2012-10-25
单精度就是float类型,是4个字节的
双精度就是double类型,是8个字节的
两个类型字节数都不同,当然双精度表示的数的范围就比单精度的要大
第3个回答  2012-10-25
单精度是7位小数,双精度是16位小数
第4个回答  2012-10-25
float的精度是7位,占4字节,而double的有效数字达到了16位,占8字节,3.14和3.14159都可以用float,当然double也不会错

C语言中的单精度和双精度浮点型的区别!3.14是哪种?3.14159呢?
一、指代不同 1、单精度:是指计算机表达实数近似值的一种方式。2、双精度:此数据类型与单精度数据类型(float)相似,但精确度比float高。二、占用空间不同 1、单精度:范围在负数的时候是从 -3.402823E38 到 -1.401298E-45,而在正数的时候是从 1.401298E-45 到 3.402823E38 。2、双精度:...

c语言单双精度的区别
C语言中,单精度浮点型为float, 双精度浮点型为double。具体区别如下:1、 占用字节空间不同。一个float变量占用四字节,一个double类型变量,一般占用8字节。2、 表示范围不同。float表示范围为-3.4E-38~3.4E+38。double 表示范围为-1.7E-308~1.7E+308。3、 精度不同。float在表示十进制时...

C语言什么是单精度、双精度
在C语言的数据类型家族中,双精度与单精度是其中的浮点型数成员。双精度被命名为double类型,而单精度则对应为float类型。double类型的存储方式使用了64位的二进制,而float类型则仅需32位二进制。由此,双精度与单精度在数值范围的最大值与最小值,以及有效数字的个数上产生了显著的差异,这直接影响了...

c语言中,常量,变量,浮点,单精度,双精度是什么意思?举例
实型常量又称实数或浮点数。在C语言中可以用单精度型和双精度型两种形式表示实型常量,分别用类型名float和double进行定义。实型常量在一般的微型集中占用4个字节,一般形式或者指数形式,数值范围都是-1038~1038,有效数字是7位。浮点型数据又分为单精度型(float)和双精度型(double)两种。1、单(float...

双精度和单精度有什么区别
1、所占的内存不同 单精度浮点数占用4个字节(32位)存储空间来存储一个浮点数,包括符号位1位,阶码8位,尾数23位。而双精度浮点数使用 8个字节(64位)存储空间来存储一个浮点数,包括符号位1位,阶码11位,尾数52位。2、所存的数值范围不同 单精度浮点数的数值范围为-3.4E38~3.4E38,而...

C语言什么是单精度、双精度?
C语言中用float描述单精度,用double描述双精度。为什么要把数据分成单双精度呢?我们生活中通常用到数据时会说精确到小数点后几位,计算机存储数据时精确度越高,占用内存空间越大,根据精确度的需要,如果你选用单精度数据,是说你让电脑用较少的空间存放数据,表现为精确到小数点后5位,并且第五个小数...

3.14是float还是double
float与double都是变量类型。先说一下float与double的含义:float是(单精度)浮点数,能保证6位有效数字 double是双精度浮点数,它能保证15位有效数字 另外就是float使用4个字节存放一个数字,而double使用8个字节存放一个数字,所以,double能够记数的范围也比float大。但是double的运行速度也比float慢。

3.14是float还是double
一、double范围 数值范围为-3.4E38~3.4E+38 二、精确度 双精度浮点型,此数据类型与单精度数据类型(float)相似,但精确度比float高。三、一般通俗讲 double float都是浮点数,就是带小数点的,像1、2、3就是int型也叫整数型。1、C语言中,双精度浮点(double)型,占8 个字节(64位)内存空间。

C语言 float f=3.141592653589; printf(f=%f\\n, f); \/*输出浮点数f=3....
浮点型变量分为单精度(float型)、双精度(double型)、长双精度(long double型)3类,单精度浮点型小数点后面有效数字为6~7位和双精度浮点型小数点后面有效数字为15~16位,单精度为32位,双精度为64位,8位为一个字节。实数3.14159在内存中的存放形式为+.3141591,+为数符,.314159为小数部分,...

C++ 整型与浮点型 单精度与双精度 main()与void main() 上述三组之间...
顾名思义,双精度比单精度精度要高,通俗地说就是保存的小数位长 比如将3.1415926535962621保存到单精度浮点型中就会变成3.14159,而双精度就能保存到3.14159265359,也就是保存地更精确。(注:实际能保存的位数并不是这么多,这里只是告诉你这个意思)main()与void main()main()其实是不符合语法规则的...

相似回答