C++ 十六进制转二进制:帮学渣d同学追学霸学姐!
#include
// 将十六进制字符转换为对应的十进制数 int hexToDec(char c) { if (c >= '0' && c <= '9') { return c - '0'; } else if (c >= 'A' && c <= 'F') { return c - 'A' + 10; } else if (c >= 'a' && c <= 'f') { return c - 'a' + 10; } return -1; }
// 将十六进制字符串转换为二进制字符串 string hexToBinary(string hex) { string binary = ''; for (int i = 0; i < hex.length(); i++) { int dec = hexToDec(hex[i]); for (int j = 3; j >= 0; j--) { binary += ((dec >> j) & 1) ? '1' : '0'; } } return binary; }
int main() { int t; cin >> t; for (int i = 0; i < t; i++) { string hex; cin >> hex; string binary = hexToBinary(hex); cout << binary << endl; } return 0; }
原文地址: https://www.cveoy.top/t/topic/mvvv 著作权归作者所有。请勿转载和采集!