int e = 1, f = 4, g = 2; float m = 10.5f, n = 4.0f, k; k = (e + f) / g + n * 1.2 / g + m;
Console.WriteLine(k);
编译错误:无法将“double”隐式转换为"float";
我查了,是n * 1.2 / g的问题,n * 1.2 / g怎么能是double型呢
Console.WriteLine(k);
编译错误:无法将“double”隐式转换为"float";
我查了,是n * 1.2 / g的问题,n * 1.2 / g怎么能是double型呢
方法二 : k = (float)((ee + f) / g + n * 1.2 / g + m);
方法二 : k = (float)((e + f) / g + n * 1.2 / g + m);
CTS Type
Description
Significant Figures
Range (approximate)
float
System.Single
32-bit single-precision floating point
7
±1.5 × 10−45 to ±3.4 × 1038
double
System.Double
64-bit double-precision floating point
15/16
±5.0 × 10 −324 to ±1.7 × 10308
如果我们在代码中写一个12.3,编译器会自动认为这个数是个double型。所以如果我们想指定12.3为float类型,那么你必须在数字后面加上F/f: