//将任意进制(2~36)的数转换为10进制,参数k=16就是16进制转10进制
/*将k进制转换为10进制 */
int atoD(char *str, int k)
{
int num = 0;
while(*str != '\0')
{
char ch = *str;
if(ch>='0' && ch<='9')
if((ch-'0')<k)
num = num*k+ch-'0';
if(ch>='a' && ch<='z')
if((ch-'a'+10)<k)
num = num*k+10+ch-'a';
if(ch>='A' && ch<='Z')
if((ch-'A'+10)<k)
num = num*k+10+ch-'A';
str++;
}
return num;
}
将任意进制(2~36)的数转换为10进制,参数k=16就是16进制转10进制
最新推荐文章于 2022-10-09 00:04:51 发布