c++中,float double区别
float和double都是C++中的浮点型数据类型,三者的区别是:
1、精度是不同的。
浮点类型是单精度浮点数,双类型是双精度浮点数。
2、分配存储空间。
c++编译器为浮点类型分配4字节,为双类型分配8字节。
3、有效位的个数是不同的。
Float可以提供6位有效数字,double可以提供15位有效数字。
扩展资料:
数据介绍
1、转换成十进制
它由0-9位数字和小数点组成。例如,0.0,。255.789, 0.13, 5.0, 300, -267.8230都是合法的实数。
2、指数形式
它由十进制数字、顺序码的符号“e”或“e”以及顺序码(只能是整数,并且可以签名)组成。
其一般形式为en(一个十进制数,n为十进制整数),其值为a*10, n如:2.1 E 5(等于5的2.1 * 10),3.7依照(等于二十3.7 * 10)的力量,0.5 E 7(等于0.5 * 10的7次方),0.5 E 7(等于0.5 * 10的7次方),-2.8依照(等于- 2.8依照(= - 2.8 * 10-2th权力)。
下面是不合法的实数345 E(没有decidecimal点)7(十进制数在E 7(E秩序象征7)E-5(5号(5号(没有秩序的象征)5(这项研究的结果如下:1。No) 2.7E(无订单编号)。
标准C允许浮点数使用后缀。后缀“f”或“f”表示该数字是浮点数。例如,356f和356。是等价的。例2.2说明了这种情况:
Void main()
{
Printf ("% f\ n% f\ n", 356。,356 f);
}
Void指定main不返回任何值,并且printf显示结果的结尾
浮点变量:
实变量分为单精度变量和双精度变量。
类型描述符是浮动单精度描述符和双精度双精度描述符。在Turbo C中,单精度类型占用内存空间4字节(32位),其数值范围为3.4E-38-3.4E+38,只能提供7位有效数字。双精度类型占用内存空间8字节(64位)。其数值范围为1.7E-308-1.7E+308,可提供16位有效数字。
实变量具有与整数相同的格式和编写规则。
例如,浮动x, y;(x, y为单精度实型量)
双a b c;(a、b、C为双精度实型量)
实型常数按双精度处理,不需要单精度或双精度。
参考文献: