#include <stdio.h>
int main() { char str[20], *pStr; long long num = 0; // 注意一定要声明为64位的变量才能正确 gets(str); for (pStr = str; *pStr != '\0'; pStr++) { num <<= 4; if (*pStr >= 'A' && *pStr <= 'F') num += *pStr - 'A' + 0x0a; else num += *pStr - '0'; } printf("%I64d\n", num); return 0; }
|