cin正在检查格式错误的输入,但现在也在EOF上崩溃了

时间:2013-04-04 02:16:43

标签: c++ error-handling cin

所以我在这个while循环中通过cin重新输入:

while (getline(cin,s))
{
    cin >> name;
    if (!cin)
        exit(1);

    cin >> age;
    in (!cin)
        exit(1);
}

读取项目的文件(有更多的cin语句,但它们都是相同的小代码位)。不幸的是,我需要在遇到格式错误的输入时使用cin(不是fstream)和exit(1)。这个问题是,当我在文件末尾点击一个空行时,cin看到它是坏的,当它不应该退出时退出。

有什么想法吗?

非常感谢。

编辑该文件如下所示:

名称年龄作业$薪水

John 55 Worker $55 
Bob 23 Boxer $23 
Susie 26 Secretary $77 

0 个答案:

没有答案