C++判断小数点后的位数

int countDecimalPlaces(double num) //判断小数点后的位数
{
    std::string str = std::to_string(num);
    size_t decimalPos = str.find(".");
    if (decimalPos == std::string::npos) {
        return 0;
    }
    int decimalPlaces = 0;
    for (size_t i = str.length() - 1; i >= decimalPos + 1; --i) {
        if (str[i] == '0') {
            continue;
        }
        else {
            return i - decimalPos;
        }
    }
    return decimalPlaces;
}

posted @ 2024-10-09 10:28  江南王小帅  阅读(12)  评论(0编辑  收藏  举报