怎么用C++写,新手求大神解答
编写一个函数将以字符串形式表示的一个16进制数转换为10进制数,并在主函数中测试。函数原型intparseHex(constchar*consthexString);如:...
编写一个函数将以字符串形式表示的一个16进制数转换为10进制数,并在主函数中测试。函数原型 int parseHex(const char *const hexString);
如:调用函数 parseHex(“A5”);返回165 展开
如:调用函数 parseHex(“A5”);返回165 展开
1个回答
展开全部
#include <iostream>
#include <cstring>
using namespace std;
int parseHex(const char *const hexString){
int i = 0,ctemp;
char hex[10];
int result = 0;
strcpy(hex,hexString);
while((ctemp = hex[i++])!=0){
//48-57 65-70 97-102
if(ctemp>=48&&ctemp<=57)
result = result*16+(ctemp-48);
else if(ctemp>=65&&ctemp<=70)
result = result*16+(ctemp-55);
else if(ctemp>=97&&ctemp<=102)
result = result*16+(ctemp-87);
else
return 0;
}
return result;
}
int main(int argc,char *argv[]){
if(argc==1)
cout<<"result is : "<<parseHex("A5")<<endl;
else
cout<<"result is : "<<parseHex(argv[1])<<endl;
return 0;
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询