一、学习要点:
1.用cin、cout输入和输出都是以字符串的形式;
2.注意什么是16进制字符串,例如0xa12;
二、代码:
#include<iostream>
#include<stdlib.h>
#include<string>
using namespace std;
int hex2dec(){
string s;
int sum=0;
cout<<"请输入一个16进制的字符串:"<<endl;
cin>>s;
for(i=2;i<=s.length()-1;i++){
if(s[i]>='a'&&s[i]<='f'){
num=s[i]-'a'+10;
}else{
num=s[i]-'1'+1;
}
int n=s.length()-1-i;
int flag=1;
while(n--){
flag=flag*16;
}
sum=sum+flag*num;
}
return sum;
}
调用代码:
int main(){
int a;
a=hex2dec();
cout<<a<<endl;
system("pause");
return 0;
}
三、运行结果: