Single::Parse误差

namewchlp 2009-08-24 10:33:22
我有

float tem;
String ^ s="06.80"
tem=Single::Parse(s);

tem居然是6.8000002. 这是为什么?如何消除这个误差
...全文
52 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
dancingbit 2009-08-26
  • 打赏
  • 举报
回复
C#中测试没有问题的,这个可能是C/C++中浮点数表示方法不同造成的误差吧。
namewchlp 2009-08-26
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 wuyi8808 的回复:]
用 double 或 decimal 。
[/Quote]

都用过了 不行的
LittleXun 2009-08-24
  • 打赏
  • 举报
回复
[Quote=引用楼主 namewchlp 的回复:]
我有

float  tem;
String ^ s="06.80"
tem=Single::Parse(s);

tem居然是6.8000002.  这是为什么?如何消除这个误差
[/Quote]
是這是C++++吧;
Float.Parse(str);
wuyi8808 2009-08-24
  • 打赏
  • 举报
回复
用 double 或 decimal 。
NealXX 2009-08-24
  • 打赏
  • 举报
回复
用Convert

111,120

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧