decimal,float和double的区别
一直很奇怪C#的预定义数据类型中为什么加了一个decimal,有float和double不就够了吗?今天来挖一挖。 浮点型 Name CTS Type De script ion 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: float f = 12.3F; decimal类型 作为补充,decimal类型用来表示高精度的浮点数 Name CTS Type De script ion Significant Figures Range (approximate) decimal System.Decimal 128-bit high precision decimal notation 28 ±1.0 × 10?28 to ±7.9