C#浮点,双精度,十进制
示例
浮动
float是.NET数据类型的别名System.Single。它允许存储IEEE754单精度浮点数。存在此数据类型mscorlib.dll,每个C#项目在创建它们时都会隐式引用该数据类型。
大致范围:-3.4×1038至3.4×1038
十进制精度:6-9个有效数字
记法:
float f = 0.1259; var f1 = 0.7895f; //f是表示浮点值的文字后缀
应当指出,该float类型通常会导致明显的舍入误差。在精度很重要的应用程序中,应考虑其他数据类型。
双
double是.NET数据类型的别名System.Double。它表示一个双精度64位浮点数。存在此数据类型,该数据类型mscorlib.dll在任何C#项目中都隐式引用。
范围:±5.0×10-324到±1.7×10308
小数精度:15-16个有效数字
记法:
double distance = 200.34; //双重价值 double salary = 245; //隐式类型转换为double值的整数 var marks = 123.764D; //D是文字后缀,表示双精度值
小数
decimal是.NET数据类型的别名System.Decimal。它代表一个指示128位数据类型的关键字。与浮点类型相比,十进制类型具有更高的精度和较小的范围,这使其适用于财务和货币计算。存在此数据类型,该数据类型mscorlib.dll在任何C#项目中都隐式引用。
范围:-7.9×1028至7.9×1028
小数精度:28-29个有效数字
记法:
decimal payable = 152.25m; //十进制值 var marks = 754.24m; //m是表示十进制值的文字后缀