📌  相关文章
📜  用于检查字符串是否为数字的 C++ 函数 - C++ (1)

📅  最后修改于: 2023-12-03 15:27:11.697000             🧑  作者: Mango

用于检查字符串是否为数字的 C++ 函数

在编程中,我们经常需要检查一个字符串是否为数字。C++ 中可以使用以下函数来判断一个字符串是否为数字。

bool isNumber(const string& s) {
    if (s.empty()) return false;
    char* endptr = 0;
    strtod(s.c_str(), &endptr);
    if (*endptr != '\0' || endptr == s.c_str()) {
        return false;
    }
    return true;
}

该函数使用 strtod 函数将字符串转换为 double 类型,如果转换失败,说明该字符串不是数字。

该函数使用 const string& s 来传递参数,这意味着字符串不会被修改。

代码片段:

bool isNumber(const string& s) {
    if (s.empty()) return false;
    char* endptr = 0;
    strtod(s.c_str(), &endptr);
    if (*endptr != '\0' || endptr == s.c_str()) {
        return false;
    }
    return true;
}

注意:该函数只能判断简单的数字字符串,即不考虑科学计数法、正负号等情况。 如果需要更复杂的数字字符串检查,请使用正则表达式。