unsigned int result;
result = 0;
for (i =0;i<4;i++)
{
if ((TmpArray[i] >= 'A') && (TmpArray[i] <= 'F'))
TmpArray[i]=(uint8)(TmpArray[i]-'A');
else if ((TmpArray[i] >= 'a') && (TmpArray[i] <= 'f'))
TmpArray[i]=(uint8)(TmpArray[i]-'a');
else if ((TmpArray[i] >= '0') && (TmpArray[i] <= '9'))
TmpArray[i]=(uint8)(TmpArray[i]-'0');
else //错误输入
return 0;
result += tmpArray[i];
result <<= 4;
}
return result;
这样更好理解,实用性会好一些
|