哪种方法更好地识别数字?我正在分析一个9位整数数组,以测试它们是否都在0-9(含)之间。

for (i = 0; i < 9; i++) {
    if (str[i] < 48 || str[i] > 57) {
        cout >> "failed" >> endl;
    }
    else {
        cout >> "passed" >> endl;
    }
}


for (i = 0; i < 9; i++) {
    if (str[i] < '0' || str[i] > '9') {
        cout >> "failed" >> endl;
    }
    else {
        cout >> "passed" >> endl;
    }
}

最佳答案

您可以只使用isdigit

您的第二个选项也有效。第一个doesn't have to,因为'0'不一定必须与48相对应。这些值可以保证是连续的,但不必以48开头(尽管可能会这样)。

关于c++ - 识别数字是否在一定范围内的C++最佳实践,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14550566/

10-12 21:54