c++ - 检测Enter键以获取用于int类型的输入

标签 c++ input error-handling conditional-statements

当cin提示输入分数时,用户仅输入Enter键时,我试图检测并输出错误。我刚在想
if(score.size()== 0)
cout <<“不是分数”;
但是,这说我需要声明score的数据类型,该数据类型已经声明。我觉得这里有一个简单而优雅的解决方案。我正在寻找一个条件简单的初学者解决方案,或到那里的任何建议。

void get_scores(vector<int> &v)
{
    int score, count=1;
    cout<<"Enter scores, enter -1 to stop"<<endl;
    cin>>score;
    while (score!=-1 && count<=100)
    {
        v.push_back(score);
        count++;
        cin>>score;
    }
}

最佳答案

听起来您是编程新手。了解如何将问题分解为更小的步骤非常重要。

第一步是从用户那里读取一个字符串(而不是一个整数)。第二步是查看字符串是否为空。第三步是将字符串转换为整数。

您可以在此站点上找到有关这三个步骤的详细信息。一旦知道如何执行这三个步骤,就应该能够将它们全部组合到一个程序中。

我意识到这不是一个完整的答案,但我希望它可以帮助您了解如何解决此问题。通过足够的实践,将您的问题分解成较小的部分应该成为自动的事情。

关于c++ - 检测Enter键以获取用于int类型的输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47467666/

相关文章:

asp.net - ASP.Net 中特定页面的自定义错误处理

vba - 内容控制无法识别内容

node.js - 检查 Node 中缺少的选项和回调

c++ - C++ 中的 C#'s ' 锁定

c++ - 整合功能

html表单在特定输入上按回车键时阻止提交

c - 如何在c中输入两个空格分隔的单词有时可以省略一个单词

C++ 函数完全特化给出错误

c++ - x64 DLL 导出函数名称

javascript - 根据颜色输入类型更改形状的颜色 javesctipt