十六进制转10进制
Posted yesiming
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了十六进制转10进制相关的知识,希望对你有一定的参考价值。
十六进制转10进制
#include <stdio.h>
int main()
char a[100]=0;
int i=0,j=0;
printf("输入一个数:");
fgets(a,100,stdin);
while(a[i])
if(a[i]>=\'0\'&&a[i]<=\'9\')
j=j*16+a[i]-\'0\';
else if(a[i]>=\'a\'&&a[i]<=\'f\')
j=j*16+a[i]+10-\'a\';
else if(a[i]>=\'A\'&&a[i]<=\'F\')
j=j*16+a[i]+10-\'A\';
i++;
printf("10进制=%d\\n",j);
return 0;
DELPHI7的十六进制转10进制函数
function hextodec(const ahexstring:string):integer
begin
result:= strtoint('$'+ahexstring)
end
我在主函数调用,用字符串转16进制的出来的结果S1:string
s2:integer;
S2:=hextodec(s1);运行报错说:'$' is not valid integer value
该怎么改呢?
var
i : integer;
begin
result := 0;
for i := length(ahexstring) downto 1 do
begin
result := result shl 4;
case ahexstring[i] of
'0'..'9' : result := result + ord(ahexstring[i]) - 48;
'A'..'Z' : result := result + ord(ahexstring[i]) - 55;
'a'..'z' : result := result + ord(ahexstring[i]) - 55 -32;
else
;//非法
end;
end; 参考技术B 你不会没给s1赋值吧,光一个$怎么转,一般比如
s1:='D3';
s2:=hextodec(s1);本回答被提问者采纳
以上是关于十六进制转10进制的主要内容,如果未能解决你的问题,请参考以下文章