菜鸟的问题sigle转换

cureSHY 2004-11-10 04:49:17
var str:string;
int:single;
begin
str:='245.36';
int:=strtofloat(str);
end;
为什么结果为245.360000610352,而不是245.36
另外,DELPHI中为什么没有float类型而却有strtofloat函数,
有sigle类型,却没有strtosingle函数,在DELPHI中single和float一样吗?
...全文
128 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
coeltdit 2004-11-10
  • 打赏
  • 举报
回复
(1)因为StrToFloat返回的是Extnded类型;
(2)查SDK,float是基类;
xfgncit98 2004-11-10
  • 打赏
  • 举报
回复
undamental real types
Type Range Significant digits Size in bytes
Real48 2.9 x 10^-39 .. 1.7 x 10^38 11-12 6
Single 1.5 x 10^-45 .. 3.4 x 10^38 7-8 4
Double 5.0 x 10^-324 .. 1.7 x 10^308 15-16 8
Extended 3.6 x 10^-4951 .. 1.1 x 10^4932 19-20 10
Comp -2^63+1 .. 2^63 -1 19-20 8
Currency -922337203685477.5808.. 922337203685477.5807 19-20 8
xfgncit98 2004-11-10
  • 打赏
  • 举报
回复
var str:string;
int:single;
begin
str:='245.36';
int:=strtofloat(str);
ShowMessage(FloatToStr(int));
end;
cureSHY 2004-11-10
  • 打赏
  • 举报
回复
有人知道吗?
cnhgj 2004-11-10
  • 打赏
  • 举报
回复
FormatFloat('0.00', int)
iamduo 2004-11-10
  • 打赏
  • 举报
回复
关注

2,497

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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