16进制如何转成10进制? ( 积分: 30 )

  • 主题发起人 主题发起人 black_yin
  • 开始时间 开始时间
B

black_yin

Unregistered / Unconfirmed
GUEST, unregistred user!
16进制如何转成10进制?急啊!!!
 
16进制如何转成10进制?急啊!!!
 
http://www.delphibbs.com/keylife/iblog_show.asp?xid=13788
KeyLife富翁笔记
作者?: 刀剑如梦
标题?: 进制转换程序示例源码之一
http://www.delphibbs.com/keylife/iblog_show.asp?xid=13789
KeyLife富翁笔记
作者?: 刀剑如梦
标题?: 进制转换程序示例源码之二
 
s1,s1:string;
s2:=Format('%d',[StrtoInt('$'+s1)]);
 
16=>10
i:integer;
i:=strtoint('$aa')
如果原先有一个16进制,那里面可以写('$'+值),记得要字符型
或i:=$aa;

10=>16
inttohex(整型值,显示的位数)
例inttohex(100,2)
 
兄弟 自己写一个撒
A5E6
10*16^3+5*16^2+15*16^1+6*16^0;
老兄不 会这你 会不知道吧?
 
function cn(CurrStr:string):Integer ;
var i,sum:Integer;
CurrChr:char;
begin
sum:=0;
for i:=1 to Length(CurrStr) do begin
CurrChr:=CurrStr[length(CurrStr)-i+1];
case CurrChr of
'0'..'9':sum:=sum+TRUNC(StrToInt(CurrChr)*intpower(16,i-1));
'a'..'f':sum:=sum+TRUNC((ord(CurrChr)-87)*intpower(16,i-1));
'A'..'F':sum:=sum+TRUNC((ord(CurrChr)-55)*intpower(16,i-1));
else begin
ShowMessage('Convert Error!');
result:=-1;
Exit;
end;
end;
end;
Result:=sum;
end;
 
可以写个自定义函数呢
 
后退
顶部