C语言给出一个浮点数默认是double型,为什么可以把3.14赋给float的变 ...
C语言可以把double类型的成员赋给float类型,但精度会损失 因为C语言对同种且不同长度的类型是没有检查的 比方说,把long型的整数赋给int类型也是可以的,但后果自负(有可能造成数位丢失或数不准确)还有把unsigned型的整数赋给int也可以,但二进制最高位为1时存储的值将不是你先前unsigned类型的值 比...
c语言中浮点型常量问题?
3.14默认是在double形式存在的,这是规定,就像法律一样,只能死记,没有道理而言。r是float型,转换为double型会有丢失数据的可能,但是编译器并不能完全确定,到底会不会丢失数据,因此,出名对你的安全,编译器会给你一个警告,当然3.14这样的数肯定不会丢失,可以不用理会他这条警告。当不同类型...
3.14是float还是double
3.14是double型。因为3.14在计算机中小数的表示基本上无法准确的描述出来,一般是只是一个近似值,所以“3.14f”才能表示成float型,而3.14只能表示成double型。1、C语言中,双精度浮点(double)型,占8 个字节(64位)内存空间。其数值范围为-1.7E308~1.7E+308,双精度完全保证的有效数字是15位,...
3.14是float还是double
现在回到题目,要存放3.14肯定需要浮点型变量类型,由于3.14只有3位有效数字,用float足矣。那怕你是存放圆周率π,存放3.14159,float仍然够用。所以应该选用float型变量。但是,你仍然可以固执地选用double型变量,没有任何问题。所以,只根据3.14这一个数字,无法确定当初编程人选择的float还是double。
float & double 在内存中是如何转换的?
3.14默认是在double形式存在的,这是规定,就像法律规定,犯了什么罪,罚多少万元的款一样,是规定,只能死记,没有道理而言。r是float型,转换为double型则有可能会丢失数据,但是编译器并不能完全确定到底会不会丢失数据,因此,出于对你的安全考虑,不管你的转换会不会丢失数据编译器都会给你一个...
float的用法c语言实例
float是C语言中一种数据类型,用来存储浮点数。其用法例子为:float a = 3.14; \/\/声明一个float型变量a,并赋值为3.14float b, c; \/\/声明两个float型变量b和cb = 1.0; \/\/为变量b赋值c = a + b; \/\/将变量a和b相加,得到的结果存储在变量c中此外,还可进行一些float型变量间的运算...
c语言中float与double的问题
使用double输入、输出3.14,应该使用%lf格式符(小写的L)
C#中double a=3.14f是什么变量类型?
double后缀是d,根据数据精度不丢失的原则,从float到double精度增加,因此是合理的,也许正因为如此C#设计为无需转换。参考资料 http:\/\/msdn.microsoft.com\/zh-cn\/library\/678hzkk9(v=vs.90).aspx
...成float变量类型,并赋同一初值3.14 为什么这2个是错的float x,y=3...
float x, y = 3.14;这一句只是对y赋值了 float x = y = 3.14;这一句直接就是语法错误,没有这种写法,定义变量的时候不可以这么写,因为y是未定义的 写成float x = 3.14, y = 3.14;就可以了
c语言中,浮点型转换为整型用什么函数?
C语言中,浮点型转换为整型可以用:强制类型转换、自动类型转换,例如:(int)3.14、int a = 3.14。1、强制类型转换 强制类型转换是通过类型转换运算来实现的。其一般形式为:(类型说明符)(表达式),其功能是把表达式的运算结果强制转换成类型说明符所表示的类型。例如: (double) a 把a转换为双...