码迷,mamicode.com
首页 > Windows程序 > 详细

C#中decimal,double和float的区别

时间:2018-12-19 22:03:26      阅读:236      评论:0      收藏:0      [点我收藏+]

标签:nbsp   精度   float   bit   2.3   数字   表示   tar   基本   

float 单精度浮点 32bit,
double 双精度浮点64bit,
decimal是高精度 128bit,浮点型。
float double 是 基本类型(primitive type),decimal不是。
float 有效数字7位,范围 ±1.5 × 10E−45 to ±3.4 × 10E38
double 有效数字15/16 位,范围 ±5.0 × 10 E−324 to ±1.7 × 10E308
decimal 有效数字 28/29 位,范围 ±1.0 × 10E−28 to ±7.9 × 10E28
( E -- 下接几次方)

decimal的有效位数很大,达到了28位,但是表示的数据范围却比float和double类型小。
使用的时候会对计算时的性能有影响。
常数写法:
float f = 12.3F; (带F)
double x=12.3; (不带就是double)
decimal d = 12.30M; (带M)

浮点数运算会有精度损失问题,有精度损失时程序不会报告,要程序员自己注意。

C#中decimal,double和float的区别

标签:nbsp   精度   float   bit   2.3   数字   表示   tar   基本   

原文地址:https://www.cnblogs.com/niyl/p/10146114.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!