c++ 如何判断c函数atoi是否失败或者是否为零字符串?

当使用函数atoi(或strtol或类似的函数),你怎么能知道整数转换是否失败或正在转换的C字符串是一个0?

对于我在做什么,0是一个可接受的值,并且正在转换的C字符串可以包含任何数量的0。它也可以有前导空白。

因为这是标记

template< typename T >
inline T convert(const std::string& str)
{
    std::istringstream iss(str);
    T obj;

    iss >> std::ws >> obj >> std::ws;

    if(!iss.eof())
        throw "dammit!";

    return obj; 
}
翻译自:https://stackoverflow.com/questions/1640720/how-do-i-tell-if-the-c-function-atoi-failed-or-if-it-was-a-string-of-zeros

转载注明原文:c++ 如何判断c函数atoi是否失败或者是否为零字符串?