include <stdlib.h>//头文件strtol()函数,可能满足你的需求
int convert(char *s,int base) //base表示进制,为8,10.16;{ int len;int sum = 0;int d;while(*s){ if(base == 16){ if(*s >'A'){ d = *s - 'A' + 10;} } else { d= *s -'0';} sum = sum *base + d;s++;} return sum;} ...
把16进制数对应的字符串转换成整数写函数int htoi(char s[]),将字符串s,转换为整数,其中s为16进制数对应的字符串,例如“0x2f”,其中0x为16进制的前缀。C语言
把16进制数对应的字符串转换成整数写函数int htoi(char s[]),将字符串s,转换为整数,其中s为16进制数对应的字符串,例如“0x2f”,其中0x为16进制的前缀。C语言
long n;int i; int is8=0; //88进制标记 if(s[0]=='0'&&s[1]>='1'&&s[1]<='8'){ is8=1; //8进制 for(n=0,i=1;s[i];i++)n=n*8+s[i]-'0';} if(s[0]=='0'&&s[1]=='x'||s[1]=='X')for(i=2,n=0;s[i];i++){if(s[i]>='0'&&s[i]<=...