阅读量:1
是的,C++中的strtol函数可以解析十六进制数。当在第三个参数中设置基数为16时,strtol函数会将输入的字符串解析为十六进制数。例如:
#include <iostream> #include <cstdlib> int main() { const char* hexString = "1A"; char* endPtr; long hexValue = strtol(hexString, &endPtr, 16); if (*endPtr != '\0') { std::cout << "Invalid input" << std::endl; } else { std::cout << "Hex value: " << hexValue << std::endl; } return 0; }
上面的代码会将字符串"1A"解析为十六进制数,输出结果为26。