如何检查从文件读入的内容是否是有效整数?

时间:2013-03-24 23:20:52

标签: c++

我正在尝试这样的事情:

int integer;

cin >> integer;

if(!integer) {//do something}

但很明显,如果整数= 0,则会出现问题。

是否有更有效的方法来检查某些东西是否为整数?

3 个答案:

答案 0 :(得分:5)

fail派生对象中使用operator boolbasic_ios

if(cin.fail()) {//do something}

答案 1 :(得分:1)

使用std::stoi()。如果字符串不是整数值,您将得到异常。

答案 2 :(得分:0)

请查看fail bit - 它会告诉你一些不妥之处