#include <iostream> #include <string> using namespace std; int main() { string s; cin >> s; int sum = 0; for (int i = 2; i < s.length(); i++) { int n = 0; if (s[i] >= 'A' && s[i] <= 'F') n = s[i] - 'A' + 10; else n = s[i] - '0'; for (int j = 1; j < s.length() - i; j++) { n *= 16; } sum += n; } cout << sum; } // 64 位输出请用 printf("%lld")
#include <iostream> #include <string> using namespace std; int main() { string s; cin >> s; cout << stoi(s, 0, 16); } // 64 位输出请用 printf("%lld")
关键函数:
stoi(字符串,起始位置,n进制(默认10进制)),将 n 进制的字符串转化为十进制