delphi 十六进制转换成十进制的问题!!!

小胡桃3300 2013-04-06 12:41:33
如何把十六进制 FFFFFFFFFFFFFFFF 转换成10进制啊,用计算器转换结果是 18446744073709551615

不知到delphi怎么转换啊,好像是数太大了,哪位老大教教我


d:int64;
begin
Pint64(@d)^:=StrToInt64('$'+'ffffffffffffffff');
showmessage(floattostr(d))
end;
这个最后结果不对,有符号
...全文
280 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
sololie 2013-04-06
  • 打赏
  • 举报
回复
// uint64 需要高版本delphi才支持,多高版本不知道,反正d7不支持,uinttoStr 同样。

var
  d:uint64;
begin
  dd:= strtoint64('$ffffffffffffffff');
  showmessage(uinttoStr(d)));
hsfzxjy 2013-04-06
  • 打赏
  • 举报
回复
无符号64位:QWORD
lhy 2013-04-06
  • 打赏
  • 举报
回复
有无符号的64位吧。
hongss 2013-04-06
  • 打赏
  • 举报
回复
按基本的办法来吧,转换成字符串处理。

度娘一下“大数乘法”。
sololie 2013-04-06
  • 打赏
  • 举报
回复
int64也装不下,int64取值范围: -9223372036854775808 ~ 9223372036854775807

16,748

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 语言基础/算法/系统设计
社区管理员
  • 语言基础/算法/系统设计社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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