温馨提示×

C++ strtol能否解析十六进制数

c++
小樊
94
2024-07-12 13:34:32
栏目: 编程语言

是的,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。

0