- 第一种情况:16进制中不含字母(a,b,c,d,e,f)
long HexToDec(int nSource)
{
long nResult=0;
int k=16; // 16进制
int n=1; // 位权
while(nSource)
{
nResult+=(nSource%10)*n;
nSource/=10;
n*=k;
}
return nResult;
}
- 第二种情况:16进制中含字母(a,b,c,d,e,f)(不含字母也可使用)
long fun(char *s)
{
int i,t;
long sum=0;
for(i=0;s[i];i++)
{
if(s[i]<='9')
t=s[i]-'0';
else
t=s[i]-'a'+10;
sum=sum*16+t;
}
return sum;
}