c++中float和double的区别以及浮点型指的是什么啊?
5个回答
展开全部
float是单精度浮点型,double是双精度浮点型。
类型 比特数 有效数字 数值范围
float 32 6-7 -3.4*10(-38)~3.4*10(38)
double 64 15-16 -1.7*10(-308)~1.7*10(308)
long double 128 18-19 -1.2*10(-4932)~1.2*10(4932)
类型 比特数 有效数字 数值范围
float 32 6-7 -3.4*10(-38)~3.4*10(38)
double 64 15-16 -1.7*10(-308)~1.7*10(308)
long double 128 18-19 -1.2*10(-4932)~1.2*10(4932)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
浮点数是指浮动小数点的数字,是和小数点固定的整数相对应的。
float用4字节32位表示浮点数,double用8字节64位表示。
目前所有的C/C++编译器都是采用IEEE所制定的标准浮点格式,即二进制科学表示法。
详情可以阅读这里:
http://www.cnblogs.com/dolphin0520/archive/2011/10/02/2198280.html
float用4字节32位表示浮点数,double用8字节64位表示。
目前所有的C/C++编译器都是采用IEEE所制定的标准浮点格式,即二进制科学表示法。
详情可以阅读这里:
http://www.cnblogs.com/dolphin0520/archive/2011/10/02/2198280.html
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
是这样的, 你程序里的小数, 比如float b[6]={1.1,2.1,3.1,4.1,5.1,50.1};这一句.
所有已知的小数常量, 编译器编译的时候, 都默认把它处理为double型的. 所以最好用double. 当然不是必须, 用float也行.
举个例,float a=7.3*1.0/3;
得到的结果为,将表达式右边按照double型数据计算得到的结果, 再转化成float型的值.
而并不是, 将表达式右边直接按float型计算得到的结果值.
由于这一点细微的差别,对于某些极特殊的值可能结果略有不同.
所有已知的小数常量, 编译器编译的时候, 都默认把它处理为double型的. 所以最好用double. 当然不是必须, 用float也行.
举个例,float a=7.3*1.0/3;
得到的结果为,将表达式右边按照double型数据计算得到的结果, 再转化成float型的值.
而并不是, 将表达式右边直接按float型计算得到的结果值.
由于这一点细微的差别,对于某些极特殊的值可能结果略有不同.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
两者区别主要在分配存储空间和描述浮点数所拥有的有效数字位数。通常情况下:
1,大多数情况下,编译器为float分配4字节,而为double则分配8字节。
2,float可提供6位有效数字,而double则可以提供15位有效数字。
所以在应用是需要注意定义数据的精度要求。
1,大多数情况下,编译器为float分配4字节,而为double则分配8字节。
2,float可提供6位有效数字,而double则可以提供15位有效数字。
所以在应用是需要注意定义数据的精度要求。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询